2010-02-05 15 views
10

Pregunta: ¿Cómo se puede pasar una instancia de un objeto del modelo de vista a un convertidor junto con el valor que se convertirá en un convertidor?Pasar más de 1 argumento a un convertidor


Info: Estoy trabajando en un programa de inventario para la gente en nuestra planta de producción que reciben los envíos entrantes. Mientras reciben un envío, marcarán quién era la empresa de transporte y quién era el conductor. Para hacer esto, quiero haber configurado un par de cuadros combinados. Cuando seleccionan el cuadro combinado del remitente y seleccionan el remitente, el cuadro combinado del conductor reflejará este cambio.

Mi plan es tener una lista de remitentes (que tienen una lista de controladores) en mi ShipmentViewModel al que se vincula el cuadro combinado de remitente. Esta lista de cargadores es solo una lista de GUID que saco de la base de datos. el remitente del envío tendrá una propiedad separada para el remitente que se seleccione, así como el conductor seleccionado.

Lo que me gustaría hacer es pasar la instancia de la lista de remitentes al convertidor junto con el GUID del remitente (obtenido del ShipmentVM). El convertidor compara el GUID con la lista de remitentes y devuelve al cuadro combinado una instanciación del ShipperVM. el cuadro combinado del controlador está vinculado a la lista de controladores de ShipperVM. Pase esta lista junto con el GUID del controlador (también obtenido del ShipmentVM) a otro convertidor que devuelva el nombre del controlador.

Estoy programando en Visual Basic y XAML de acuerdo con el esquema M-V-VM.

P.S. Diciendo "No se puede pasar más de 1 argumento a un convertidor". es una respuesta totalmente legítima. Solo necesito una confirmación. Estoy empezando a pensar que este es el caso ...

Respuesta

15

Si necesita pasar varias "cosas" a un convertidor, lo que realmente quiere es un MultiValueConverter, que puede aceptar un número N de valores de entrada.

http://msdn.microsoft.com/en-us/library/system.windows.data.imultivalueconverter.aspx

+0

corregir answer-- –

+0

llegué impaciente que espera una respuesta de lo que en realidad decidí a hacer las cosas de una manera diferente. ¡Gracias de cualquier manera! Si hubiera esperado, estoy seguro de que esta fue la respuesta correcta. – Narcolapser

Cuestiones relacionadas