wpf c#中组合框填充的通用类

本文关键字:填充 组合 wpf | 更新日期: 2023-09-27 18:01:39

我创建了一个在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);
        }
    }

wpf c#中组合框填充的通用类

您确定正确使用了组合框吗?我刚刚检查了组合框没有属性DataSource。您可以使用ItemsSource属性来填充您的框,如下所示

cmb.ItemsSource = ds.Tables[dTable].DefaultView;

你也可以在XAML

中绑定相同的
<ComboBox ItemSource="{Binding MyData}" SelectedIndex=0/>

和代码后面的

var MyData = ds.Tables[dTable].DefaultView;