Pregunta

Soy bastante nuevo en el uso de controles (Infragistics comenzado ayer). Mientras que son (muy) impresionante no se añade otro nivel de complejidad, que estoy a través muddeling. Así que estoy pidiendo lo que siento de ser un problema bastante simple:

Estoy tratando de obtener el valor de otra columna además de la que se muestra en el cuadro combinado. Hasta ahora, todos mis intentos sólo han agarrado el valor de la columna de cabecera no el valor en la columna de la fila que se seleccionó.

En concreto quiero tomar de mi ultracombobox el valor de la columna de apellido cuando se selecciona una fila y colocarlo en una caja de texto. El siguiente código que tengo hasta ahora Retruns la columna de la cabecera (Apellido) y nada más, no importa qué fila selecciono.

Private Sub ucboPatientInfo_RowSelected(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.RowSelectedEventArgs) Handles ucboPatientInfo.RowSelected
        ucboPatientInfo.ValueMember = "accounts"
        LastName = ucboPatientInfo.SelectedRow.Band.Columns(1).ToString

He añadido el: "ucboPatientInfo.ValueMember = 'cuentas'" para ayudar a clarificar lo que mi código está haciendo en realidad no es en esta parte del código

.

Por favor, ayuda

¿Fue útil?

Solución 2

encontrado combinación correcta:

LastName = ucboPatientInfo.Cells(5).Value

Otros consejos

Parece que has encontrado una solución de trabajo a su propio problema. Pensé que sólo tiene que añadir en algo más de información y las cosas a tener en cuenta.

Es posible que desee evitar una refrence índice duro a su celular, en caso de que los cambios de posición en el futuro a medida que se agregan nuevos datos a la fuente de datos de la red. Digamos que inserta otra columna por delante del apellido, ahora tus .Cells (5) van a devolver datos incorrectos.

En vez trate de usar las células ( "columnName") para acceder de esta manera:

LastName = ucboPatientInfo.Cells("LastName").Value

También debe tratar de utilizar los eventArgs y objetos emisores dentro de su evento y evitar una refrence control directo. Así que el código podría tener este aspecto en su lugar:

LastName = e.Row.Cells("LastName").Value.ToString()

Me alegra ver sus cosas Workin en cualquier caso.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top