例外:设置DataSource属性时,无法修改项集合

时间:2011-02-27 16:18:38

标签: c# combobox

我在Windows窗体中使用了combobox,它与数据库中的数据绑定。

我做得很好但是当我尝试添加第一项< -Please select Category->来自数据库的数据这个错误apeared

  

(无法修改项目集合   何时设置DataSource属性)   在CBParent.Items.Insert(0,   “ - 选择 - ”);

    public Category()
        {
            InitializeComponent();
            CategoryParent();

        }
        private void CategoryParent()
        {

            using (SqlConnection Con = GetConnection())
            {

                SqlDataAdapter da = new SqlDataAdapter("Select Category.Category ,Category.Id from Category", Con);
                DataTable dt = new DataTable();
                da.Fill(dt);
                CBParent.DataSource = dt;
                CBParent.DisplayMember = "Category";
                CBParent.ValueMember = "Id";
CBParent.Items.Insert(0, "-select-");
            }
        }

1 个答案:

答案 0 :(得分:2)

您必须将该项添加到数据源本身,即在SQL查询中,因为如错误所示,如果您设置了数据源,则无法向控件添加项。

一种方法是让你的sql查询做这样的联合:

Select Category.Category ,Category.Id from Category

UNION

SELECT 'Please select Category', 0