簡體   English   中英

C#中的組合框更新

[英]Combo Box Update in c#

我正在使用組合框,正在刷新組合框的值,首先刪除所有值,然后重新填充它。 但這是行不通的。 該代碼重復創建問題的組合框中的值。 這是我的代碼。

    for (int i = 0; i < updateCombo.Items.Count; i++)
    updateCombo.Items.RemoveAt(i);

    //----------- Now Adding New Values --------
    updateCombo.Items.Add("Select an option . . .");

    SqlCommand command = new SqlCommand(Queries.qry9, connection);
    SqlDataReader reader = command.ExecuteReader();

請幫助我解決此問題。

不知道為什么會發生這種情況-但如果Items.Count返回為0,則您的循環將不會從項目列表中刪除任何現有內容,並且您將得到重復項。

您是否嘗試過清除列表中的所有內容,而不使用:

updateCombo.Items.Clear(); 

它省去了您遍歷所有對象的麻煩,無論如何都一一刪除。

您的for循環將刪除0處,1處,2處的項目,依此類推。 但是,刪除0處的項目時,列表中的該位置不會保持空白-其他項目實際上向下移動了一個。

因此,如果您將清算代碼更改為:

for (int i = 0; i < updateCombo.Items.Count; i++)
updateCombo.Items.RemoveAt(0);

它應該工作。 但是,正如其他人所建議的那樣,請使用updateCombo.Items.Clear(); 是更好的方法。

暫無
暫無

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

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