Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.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中使用组合框中的选定值传递参数#_C#_.net_Winforms_Combobox_.net 4.5 - Fatal编程技术网

C# 在c中使用组合框中的选定值传递参数#

C# 在c中使用组合框中的选定值传递参数#,c#,.net,winforms,combobox,.net-4.5,C#,.net,Winforms,Combobox,.net 4.5,我的表单上有一个由数据源绑定的组合框1,它显示数据表中的值 然后我有了需要填充的combobox2,但是触发的存储过程需要一个参数 如何将selectedValue从combobox1传递到数据源,以便combobox2显示其值 这是我目前的代码: private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { string databaseName = string.Empty; if (com

我的表单上有一个由数据源绑定的
组合框1
,它显示数据表中的值

然后我有了需要填充的
combobox2
,但是触发的存储过程需要一个参数

如何将selectedValue从
combobox1
传递到数据源,以便combobox2显示其值

这是我目前的代码:

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    string databaseName = string.Empty;
    if (comboBox1.SelectedValue != null) databaseName = comboBox1.SelectedValue.ToString();
    comboBox2.DataSource(FindColumn.GetData(databaseName));
}

这是如何获取绑定到数据源的
组合框
以及如何从所选项目中获取值的示例(以便以后可以使用该值填充另一个组合框)

请注意,我们没有引用列“c”

这将导致显示“aaa”或“bbb”。现在,您可以使用该值调用存储的进程

基本上,当您绑定
DataTable
时,每个组合项都是一个
DataRowView
。您选择的行的所有表数据都可用

通知

comboBox1.DisplayMember = "b";
comboBox1.ValueMember = "a";

通常这就足够了。您可以使用一些id作为
ValueMember
,并使用该id执行CRUD操作。但是,上面的示例再次表明,您可以通过
SelectedItem
属性获得更多不同的值。

在发布的代码中遇到什么问题?My
combobox2
不起任何作用。。没有填充任何值,存储的进程甚至不会启动。@RohitVats您能帮忙吗?我只需要知道如何填充我的
combox2
,并传入我的参数
databaseName
检查Combo1的autopostback属性是否为true。默认情况下,它们在选择选项时从不回发。
void button1_click()
{
    MessageBox.Show(((DataRowView )comboBox1.SelectedItem)[2].ToString ());
}
comboBox1.DisplayMember = "b";
comboBox1.ValueMember = "a";