Formas hay muchísimas dependiendo de la política de precios de venta que tenga el negocio, a veces ni políticas tienen y sus precios de venta son emocionales (tiendas pequeñas).
Tal como lo planteas, cuando ubiques un producto y navegues con teclado o mouse, puedes hacer que se levante un grid o list desde donde escoja el precio.
Igual esa forma me parece feisima.
Lo otro que puedes hacer es tener en memoria la lista de precios de cada articulo, cuando estés en el textbox de precio puedes usar por ejemplo la barra espaciadora para navegar en los diferentes precios, de esa forma al cliente le sera mas dificil "ganarse" con los precios.
Igual esa forma me parece funcional cuando hablamos de negocitos pequeños, donde el operador o vendedor decide el precio.
La forma merfi, vendría siendo donde el operador no decide el precio de venta ya sea por la cara del cliente o porque es un cliente regateador, bueno podría ahondar mas en esto pero me salgo del tema. Asi que lo que harías en esta escala de negocio es que el sistema asigne el precio de venta ¿como? dependiendo de la cantidad de artículos que lleva. Si pongo 10 unidades me pintará el precio que tengo asignado para el rango de 1 a 20 unidades, si me lleva 35 unidades le asigno el precio del rango 21 a 50, etc etc.
Otra forma también es no tener tantos precios asignados por cada articulo (mejor es el %) porque a la larga resulta inmantenible, otra forma es aplicar un descuento al total de venta dependiendo claro de algunos factores. "Vamos a esa tienda que cuando compras mas de $1000 te bajan 5% de lo que lleves", de alli los tickets de descuento... como dije, formas hay muchas, depende si lo quieres aplicar para un negocio especifico o quieres crear un standard.