Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在文本框‎;C#?_C#_.net_Sql Server_Combobox_Ado.net - Fatal编程技术网

如何在文本框‎;C#?

如何在文本框‎;C#?,c#,.net,sql-server,combobox,ado.net,C#,.net,Sql Server,Combobox,Ado.net,我是新手,有点迷路了。 通过在组合框中选择,尝试在文本框中显示我的数据库的值。但我不能。 请帮帮我。这是我的代码: private void CargarDatos() { string consulta = "SELECT * FROM [dbo].[alumno]"; DataTable dt = new DataTable(); SqlConnection con = new SqlConnec

我是新手,有点迷路了。 通过在组合框中选择,尝试在文本框中显示我的数据库的值。但我不能。 请帮帮我。这是我的代码:

    private void CargarDatos()
        {
            string consulta = "SELECT * FROM [dbo].[alumno]";
            DataTable dt = new DataTable();
            SqlConnection con = new SqlConnection(Properties.Settings.Default.conexion);
            SqlCommand cmd = new SqlCommand(consulta, con);
            SqlDataAdapter da = new SqlDataAdapter(cmd);

            try
            {
                con.Open();
                da.Fill(dt);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            con.Close();

            this.dataGridView1.DataSource = dt;

            cbalumno.DataSource = dt;
            cbalumno.DisplayMember="Nombre";
            cbalumno.ValueMember="Id";
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            CargarDatos();
        }

        private void cbalumno_SelectedIndexChanged(object sender, EventArgs e)
        {

        }
    }
}
我要显示的参数是表alumno的“Name”、“姓氏”和“DNI”


有什么办法吗???

您已经将事件
cbalumno\u SelectedIndexChanged
放置在代码中,现在您必须使用它

在该事件中,只需使用该文本框的
文本
属性,并在组合框中指定所选项目的值,如下所示:

private void cbalumno_SelectedIndexChanged(object sender, EventArgs e)
    {
        yourTextBoxID.Text = comboBoxID.Text;
    }

希望这能有所帮助。

您可以使用
DataRowView
获取与当前
SelectedItem
绑定的记录。
DataRowView
对象的
Row
属性将为您提供数据行。使用该行可以获得绑定到该行的列

private void cbalumno_SelectedIndexChanged(object sender, EventArgs e)
{
     DataRowView vrow = (DataRowView)cbalumno.SelectedItem;
     string sValue = vrow.Row["Name"].ToString();
}

第一步
con.Close()
最后
如果发生错误,则阻止关闭连接。现在,实际上您需要多值组合框,该组合框将根据
DataTable
显示多个列。您必须为自己设计一个组合框,或者您可以使用DevExpress。我这样做了,在我的三个文本框中,仅显示了nombretbox的值:private void cbalumno_SelectedIndexChanged(object sender,EventArgs e){nombretextBox.Text=cbalumno.Text;apellidotextBox.Text=cbalumno.Text;citextBox.Text=cbalumno.Text;}这可能是因为其他两个组合框上没有任何选定的项目。请尝试在两个组合框上选择一些文本,然后在第三个组合框上选择一些文本,然后选中。