none
error:System.ArgumentException {"No hay ninguna asignación de tipo de objeto System.Windows.Forms.TextBox a un tipo nativo de un proveedor administrado conocido."} RRS feed

  • Pregunta

  • Hola estoy tratando de consultar infiormacion y me manda este error:

    error:System.ArgumentException {"No hay ninguna asignación de tipo de objeto System.Windows.Forms.TextBox a un tipo nativo de un proveedor administrado conocido."}

     

    ayuda

    please

     

    anexo codigo

    private void button2_Click(object sender, EventArgs e)
            {
                string connstring = "Data Source=SIT-GAZAGI;Initial Catalog=becas;Integrated Security=True";
                using (SqlConnection cnn = new SqlConnection(connstring))
                {
                    string strsql = "SELECT curp,ap_paterno,ap_materno,nombre,sexo FROM becas_alumn WHERE curp = @curp";
                    SqlCommand cmd = new SqlCommand(strsql, cnn);
                    cmd.Parameters.AddWithValue("@curp", textBox2);
                    cmd.Parameters.AddWithValue("@ap_paterno", textBox3);
                    cmd.Parameters.AddWithValue("@ap_materno", textBox4);
                    cmd.Parameters.AddWithValue("@nombre", textBox5);
                    cmd.Parameters.AddWithValue("@sexo", comboBox1);
                    
                    //cmd.Parameters.AddWithValue("@fecha_nac", dtpfechanacimiento.Value.ToString("yyyy-MM-dd"));
                    //ESTABA COMENTADOcmd.Parameters.AddWithValue("@fecha_nac", fecha_nac);
                    //cmd.Parameters.AddWithValue("@escuela", textBox7);
                    //cmd.Parameters.AddWithValue("@descripción", textBox8);
                    //cmd.Parameters.AddWithValue("@turno", textBox9);
                    //cmd.Parameters.AddWithValue("@nivel", comboBox2);
                    //cmd.Parameters.AddWithValue("@ingreso", comboBox3);
                    //cmd.Parameters.AddWithValue("@promedio", textBox10);
                    //cmd.Parameters.AddWithValue("@grado", comboBox4);
                    //cmd.Parameters.AddWithValue("@domicilio", textBox11);
                    //cmd.Parameters.AddWithValue("@colonia", textBox12);
                    //cmd.Parameters.AddWithValue("@telefono", textBox13);
                    //cmd.Parameters.AddWithValue("@municipio", textBox14);
                    //cmd.Parameters.AddWithValue("@localidad", textBox15);
                    //cmd.Parameters.AddWithValue("@ingreso_familiar", textBox16);
                    //cmd.Parameters.AddWithValue("@vive_en_casa", comboBox5);
    
                    SqlDataAdapter sqladapt = new System.Data.SqlClient.SqlDataAdapter(cmd);
                    DataSet ds = new DataSet();
                    sqladapt.Fill(ds, "becas_alumn");
                    DataTable dt = ds.Tables["becas_alumn"];
    
                    if (dt.Rows.Count == 0)
                    {
                        MessageBox.Show("No existe Alumno en Base de Datos");
                        this.textBox2.Text = "";
                        this.textBox3.Text = "";
                        this.textBox4.Text = "";
                        this.textBox5.Text = "";
                        this.comboBox1.Text = "";
                        this.textBox7.Text = "";
                        this.textBox8.Text = "";
                        this.textBox9.Text = "";
                        this.comboBox2.Text = "";
                        this.comboBox5.Text = "";
                        //this.dtpfechanacimiento.Value.ToString("");
                        this.textBox10.Text = "";
                        this.comboBox4.Text = "";
                        this.textBox11.Text = "";
                        this.textBox12.Text = "";
                        this.textBox13.Text = "";
                        this.textBox14.Text = "";
                        this.textBox15.Text = "";
                        this.textBox16.Text = "";
                        this.comboBox5.Text = "";
                        textBox2.Focus();
                    }
    
                    else
                    {
                        DataRow fila = dt.Rows[0];
                        this.textBox2.Text = fila["curp"].ToString();
                        this.textBox3.Text = fila["ap_paterno"].ToString();
                        this.textBox4.Text = fila["ap_materno"].ToString();
                        this.textBox5.Text = fila["nombre"].ToString();
                        this.comboBox1.Text = fila["sexo"].ToString();
                        //this.textBox7.Text = fila["escuela"].ToString();
                        //this.textBox8.Text = fila["descripcion"].ToString();
                        //this.textBox9.Text = fila["turno"].ToString();
                        //this.comboBox2.Text = fila["nivel"].ToString();
                        //this.comboBox3.Text = fila["ingreso"].ToString();
                        //this.textBox10.Text = fila["promedio"].ToString();
                        //this.comboBox4.Text = fila["grado"].ToString();
                        //this.textBox11.Text = fila["domicilio"].ToString();
                        //this.textBox12.Text = fila["colonia"].ToString();
                        //this.textBox13.Text = fila["telefono"].ToString();
                        //this.textBox14.Text = fila["municipio"].ToString();
                        //this.textBox15.Text = fila["localidad"].ToString();
                        //this.textBox16.Text = fila["ingreso_familiar"].ToString();
                        //this.comboBox5.Text = fila["vive_en_casa"].ToString();
    
                    }
    
    
    
    
                }
    
    

     

    miércoles, 14 de septiembre de 2011 23:19

Respuestas

  • hola ,asi al ojo , si esque no has copiado mal , te faltarias los .text

       SqlCommand cmd = new SqlCommand(strsql, cnn);
    
                    cmd.Parameters.AddWithValue("@curp", textBox2.Text);
    
                    cmd.Parameters.AddWithValue("@ap_paterno", textBox3.Text);
    
                    cmd.Parameters.AddWithValue("@ap_materno", textBox4.Text);
    
                    cmd.Parameters.AddWithValue("@nombre", textBox5.Text);
    
                    cmd.Parameters.AddWithValue("@sexo", comboBox1.SelectedValue);
    
    
    
    


    Saludos.

     


    Si la respuesta te fue útil vótala como tal,y si fue respuesta márcala. Saludos. Lima-Perú
    miércoles, 14 de septiembre de 2011 23:23
  • seguramente este problema viene del comentario que realice en esta otra pregunta

    http://social.msdn.microsoft.com/Forums/es/vcses/thread/6bc3d547-c23b-4e69-95a7-540efd4f65ee

     

    pero como bien marca Augusto, y validas en el ejemplo de la pregunta anterior, debes definir las propiedades de cada control, la que corresponda con cada uno

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Gilberto GRACIA jueves, 15 de septiembre de 2011 13:33
    jueves, 15 de septiembre de 2011 2:22
  • estas definiendo la propiedad ValueMember al Combox1? en esta propeidad deberias definri que campo representa los datos en el combo

    si lo haces me extraña el error, sino lo haces entonces es eso

    estas recuperando el objeto que se uso para cargar cada item

     

    resumen si usas el SelectedValue, no olvides asignar un ValueMember

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Gilberto GRACIA jueves, 15 de septiembre de 2011 13:57
    jueves, 15 de septiembre de 2011 13:30
  • Hola Gilberto

    Intenta con combobox.SelectedItem.ToString()... te devolverá el texto del item, en este caso el sexo como lo hayas definido

    Un saludo

    PD: SelectedValue se usa SOLO cuando cargas tu combobox con un datasource en el cual defines el DisplyMember y el ValueMember. Encontrarás mas información en el Blog de Leandro: http://ltuttini.blogspot.com/2010/05/winforms-combobox-add-items.html


    Antonio Lobo
    Para el correcto funcionamiento, y que otros usuarios se puedan beneficiar de la solucion de esta pregunta por favor marca las respuestas que te hayan ayudado como "Respuesta".
    Si la respuesta te ha sido util Votala.
    Mi blog

    • Editado Antonio Lobo jueves, 15 de septiembre de 2011 13:34
    • Marcado como respuesta Gilberto GRACIA jueves, 15 de septiembre de 2011 13:57
    jueves, 15 de septiembre de 2011 13:31

Todas las respuestas

  • hola ,asi al ojo , si esque no has copiado mal , te faltarias los .text

       SqlCommand cmd = new SqlCommand(strsql, cnn);
    
                    cmd.Parameters.AddWithValue("@curp", textBox2.Text);
    
                    cmd.Parameters.AddWithValue("@ap_paterno", textBox3.Text);
    
                    cmd.Parameters.AddWithValue("@ap_materno", textBox4.Text);
    
                    cmd.Parameters.AddWithValue("@nombre", textBox5.Text);
    
                    cmd.Parameters.AddWithValue("@sexo", comboBox1.SelectedValue);
    
    
    
    


    Saludos.

     


    Si la respuesta te fue útil vótala como tal,y si fue respuesta márcala. Saludos. Lima-Perú
    miércoles, 14 de septiembre de 2011 23:23
  • seguramente este problema viene del comentario que realice en esta otra pregunta

    http://social.msdn.microsoft.com/Forums/es/vcses/thread/6bc3d547-c23b-4e69-95a7-540efd4f65ee

     

    pero como bien marca Augusto, y validas en el ejemplo de la pregunta anterior, debes definir las propiedades de cada control, la que corresponda con cada uno

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Gilberto GRACIA jueves, 15 de septiembre de 2011 13:33
    jueves, 15 de septiembre de 2011 2:22
  • Una pregunta

     

     

    porque si  el comboBox1 lo pongo como Combox1.SelectedValue(); en la consulta

     

    me manda este error: {"Prepared statement '(@curp nvarchar(18),@ap_paterno nvarchar(4000),@ap_materno nvarc' expects parameter @sexo, which was not supplied."}

    y si lo pongo como comboBox1.Text si se realiza la consulta correctamente?

     

     

    saludos

     

    jueves, 15 de septiembre de 2011 13:17
  • estas definiendo la propiedad ValueMember al Combox1? en esta propeidad deberias definri que campo representa los datos en el combo

    si lo haces me extraña el error, sino lo haces entonces es eso

    estas recuperando el objeto que se uso para cargar cada item

     

    resumen si usas el SelectedValue, no olvides asignar un ValueMember

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Gilberto GRACIA jueves, 15 de septiembre de 2011 13:57
    jueves, 15 de septiembre de 2011 13:30
  • Hola Gilberto

    Intenta con combobox.SelectedItem.ToString()... te devolverá el texto del item, en este caso el sexo como lo hayas definido

    Un saludo

    PD: SelectedValue se usa SOLO cuando cargas tu combobox con un datasource en el cual defines el DisplyMember y el ValueMember. Encontrarás mas información en el Blog de Leandro: http://ltuttini.blogspot.com/2010/05/winforms-combobox-add-items.html


    Antonio Lobo
    Para el correcto funcionamiento, y que otros usuarios se puedan beneficiar de la solucion de esta pregunta por favor marca las respuestas que te hayan ayudado como "Respuesta".
    Si la respuesta te ha sido util Votala.
    Mi blog

    • Editado Antonio Lobo jueves, 15 de septiembre de 2011 13:34
    • Marcado como respuesta Gilberto GRACIA jueves, 15 de septiembre de 2011 13:57
    jueves, 15 de septiembre de 2011 13:31
  • gracias
    domingo, 20 de septiembre de 2020 21:17