我已经在WPF C#中创建了一个用于填充组合框的公共类,但它不起作用。我正在寻找一个用于在WPF C#
中填充组合框的公共类 public void comboFill(ComboBox cmb, string procedureName, string dTable, string dDisplay, string dValue)
{
try
{
using (SqlConnection con = new SqlConnection(DBCon.conStr))
{
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(procedureName, con);
da.SelectCommand.CommandType = CommandType.StoredProcedure;
da.Fill(ds, dTable);
cmb.DataSource = ds.Tables[dTable].DefaultView;
cmb.DisplayMember = dDisplay;
cmb.ValueMember = dValue;
if (cmb.Items.Count > 0)
{
cmb.SelectedIndex = 0;
}
}
}
catch (Exception exp)
{
MessageBox.Show(exp.Message);
}
}
答案 0 :(得分:0)
您确定正确使用Combobox吗?我只是检查了组合框没有属性 DataSource 。您可以使用 ItemsSource 属性来填充您的框
cmb.ItemsSource = ds.Tables[dTable].DefaultView;
您也可以在XAML中绑定相同的内容
<ComboBox ItemSource="{Binding MyData}" SelectedIndex=0/>
并在您的代码中:
var MyData = ds.Tables[dTable].DefaultView;