【问题标题】:C# Adding data to combo-box from MS Access table [duplicate]C#将数据从MS Access表添加到组合框[重复]
【发布时间】:2013-10-09 09:15:01
【问题描述】:

我是 C# 新手,我正在创建一个测试应用程序以从 Access 数据库中的表中填充组合框。我希望能够即时设置这些信息。作为一名测试人员,我创建了一个新表单,添加了一个名为“TBCallOutcome”的组合框,并添加了代码。

但是,它似乎在每一行中都使用“System.Data.DataRowView”填充下拉列表。

有什么想法吗?谢谢?

    private void Form1_Load(object sender, EventArgs e)
    {
        string query = "SELECT [Call outcome] FROM [DD Call Outcomes] WHERE ((([Show on list])=True)) ORDER BY [Sort order]";
        OleDbDataAdapter dAdapter = new OleDbDataAdapter(query, @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source='N:\\Test\\Dropdowns.mdb';User Id=admin; Password=;");
        DataTable source = new DataTable();
        dAdapter.Fill(source);
        TBCallOutcome.DataSource = source;
    }

【问题讨论】:

    标签: c#


    【解决方案1】:

    你必须为ComboBox设置DisplayMember

    private void Form1_Load(object sender, EventArgs e)
    {
        string query = "SELECT [Call outcome] FROM [DD Call Outcomes] WHERE ((([Show on list])=True)) ORDER BY [Sort order]";
        OleDbDataAdapter dAdapter = new OleDbDataAdapter(query, @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source='N:\\Test\\Dropdowns.mdb';User Id=admin; Password=;");
        DataTable source = new DataTable();
        dAdapter.Fill(source);
    
        TBCallOutcome.ValueMember = "[Call outcome]";
        TBCallOutcome.DisplayMember = "[Call outcome]";
        TBCallOutcome.DataSource = source;
    }
    

    【讨论】:

    • 谢谢 - 非常感谢。
    猜你喜欢
    • 1970-01-01
    • 2019-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-20
    • 2016-10-29
    相关资源
    最近更新 更多