none
Problemas al mostrar dato en combobox c# RRS feed

  • Pregunta

  • Buenas tardes.

    Tengo el sgte método que me permite visualizar una lista haciendo la unión del código y descripción 

    public DataTable Cargar_CIE10()
            {
                DataTable dt = new DataTable();
    
                string connectionstring = ConfigurationManager.ConnectionStrings["Trabajo"].ConnectionString;
                SqlConnection conn = new SqlConnection(connectionstring);
    
                SqlCommand command = new SqlCommand();
                command.Connection = conn;
                command.CommandText = "SELECT [CIE_CODIGO]+' '+[CIE_CONCEPTO] AS CIE10 FROM [DIENTES_SANOS].[dbo].[TBL_CIE10]";
    
                SqlDataAdapter da = new SqlDataAdapter(command);
    
                da.Fill(dt);
    
                return dt;
            }
    
            public AutoCompleteStringCollection Cargar_CIE10_Auto()
            {
                DataTable dt = Cargar_CIE10();
    
                AutoCompleteStringCollection stringCol = new AutoCompleteStringCollection();
    
                foreach (DataRow row in dt.Rows)
                {
                    stringCol.Add(Convert.ToString(row["CIE10"]));
                }
    
                return stringCol;
            }

    Pero al momento de realizar la carga en el método load aplico este código

     
     cmbC10.DataSource = daoOdont.Cargar_CIE10();
    cmbC10.DisplayMember = "CIE10";
    cmbC10.AutoCompleteCustomSource = daoOdont.Cargar_CIE10_Auto(); 
    cmbC10.AutoCompleteMode = AutoCompleteMode.Suggest;  
    cmbC10.AutoCompleteSource = AutoCompleteSource.CustomSource; 

    Pero cuando me dirijo a la pestaña del tabcontrol donde esta el combobox no aparece cargada la selección que esta guardada en la base  en este caso el item numero 8 , por defecto me sale el primero item cargado , que podría estar realizando de manera errónea¿?

    De antemano les agradezco su ayuda.

    sábado, 27 de abril de 2019 21:13

Respuestas

  • hola

    Te esta faltando indicar el ValueMember

    cmbC10.DisplayMember = "CIE10";
    cmbC10.ValueMember = "CIE_CODIGO";
    
    cmbC10.DataSource = daoOdont.Cargar_CIE10();


    para lo cual necesitas

    command.CommandText = "SELECT CIE_CODIGO, [CIE_CODIGO]+' '+[CIE_CONCEPTO] AS CIE10 FROM [DIENTES_SANOS].[dbo].[TBL_CIE10]";

    entonces cuando asignes el SelectedValue te mostrara el valor del item correcto

    saludos

    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta roberto1390 domingo, 28 de abril de 2019 18:14
    sábado, 27 de abril de 2019 22:48