簡體   English   中英

如何從數據庫填充組合框並在C#中的索引零上插入新項目

[英]how to populate combo box from database and insert new item on index zero in C#

下面的代碼為我工作,但我無法將--- Select ---插入值為零的第一個索引,我已經嘗試過:

cboGrade.Items.Insert(0,"---Select---)

但這對我不起作用。 我也希望能夠在檢索數據庫時檢索並在組合框上顯示displaymember和displayvalue,而不會重復執行以下項:

private void LoadGrade()
    {
        using (SQLiteConnection conn = new SQLiteConnection(connstring))
        {

            try
            {
                string query = "select GradeCode, GradeName from Grade";
                SQLiteDataAdapter da = new SQLiteDataAdapter(query, conn);
                conn.Open();
                DataSet ds = new DataSet();
                da.Fill(ds, "OrgGrade");
                cboGrade.DisplayMember = "GradeName";
                cboGrade.ValueMember = "GradeCode";
                cboGrade.DataSource = ds.Tables["OrgGrade"];

            }
            catch (Exception ex)
            {

                MessageBox.Show("Error occured loading grade!");
            }
        }
    } 

僅當您具有未綁定的組合時,項目才有效,因此您需要構建項目數組或使用綁定。

您需要做的是這樣插入要綁定的數據表:

DataTable dt = ds.Tables["OrgGrade"]
// generate the data you want to insert
DataRow newRow=  dt.NewRow();

newRow.GradeName = "-- Select --";
newRow.GradeCode = 0;
// insert in the desired place
dt.Rows.InsertAt(newRow, 0);

然后使用以下方式綁定:

cboGrade.DataSource = dt;

與您擁有的類似。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM