• Martes 12 de Mayo de 2026, 11:07

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - Sarampion

Páginas: [1]
1
C# / Obtener el DataBinding de un control
« en: Viernes 28 de Noviembre de 2008, 15:21 »
Hola a toda aquella persona que este leyendo estas lineas.
El motivo de mi "post" es el siguiente: Estoy desarrollando un buscador por campo y valor (analogo a un buscador de Access, o a un buscador Customizado de un DataGrid de DevExpress). Trabajo sobre un Windows Form que contiene un ControlUser, y este ultimo esta conformado por TextEdit, Labels, ComboBox, etc. Los TextEdit estan bindeados a campos que obtengo de determinados BindingSource. Dicho buscador tiene un ComboBox que contiene los campos por el cual el operador va a poder buscar un usuario determinado. Dicho control (comboBox) quiero que contenga los campos bindeados a los TextEdit para que el operador elija un campo, en un TextEdit ingrese un valor acorde al campo seleccionado, presione Buscar y Wala!! currentUserChanged.
El tema recae justamente en obtener que campo esta bindeado a cada TextEdit. Para ello desarrolle, incompleto, lo siguiente:

MemberInfo[] mi =
            assaSingleVisitEdit1.GetType().GetMembers(BindingFlags.Public | BindingFlags.NonPublic |
                                                      BindingFlags.Instance); //assaSingleVisitEdit1 es el UserControl
         
          foreach (MemberInfo info in mi)
          {
            if (info.GetType().FullName.Contains("System.Reflection.RtFieldInfo"))
            {
              if (info.Name.StartsWith("te"))
              {
                //IBindableComponent ibc = (IBindableComponent)info.DeclaringType;
                //NECESITO EL CAMPO BINDEADO A CADA CONTROL
                //IBindableComponent.DataBinding
                //¿Como obtengo el Binding de cada componente?
                //¿Como casteo un MemberInfo a un IBindingComponent?
                FieldInfo fi = info as FieldInfo; //¿Es un avance o no lo es?
                //¿Como llego a tener un objeto IBindingComponent? ¿Se puede o me estoy rompiendo la cabeza al pedo?              

                Propiedades.Add(info);
              }
            }
          }

Como podran observador todas mis dudas e inconvenientes estan comentarizados en el codigo que les he copiado. Resumiendo, como puedo llegar a un objeto IBindingComponent para poder obtener el DataBinding de cada TextEdit. Por supuesto, no espero la solucion desde este codigo sino que acepto otras propuestas de desarrollo para poder llegar a mi objetivo.

Desde ya, muchas gracias a todos los que dediquen su tiempo para leer mi "post".
Saludos y exitos! Sarampion

Páginas: [1]