簡體   English   中英

數據源為列表的Winform組合框<int>

[英]Winform Combobox with DataSource as List<int>

這可能是一個非常簡單的問題,但我意識到我無法使其正常運行。

我有一個Winform組合框,其數據源為List<int>

combo.DataSource = intList;

我應該為.DisplayMember.ValueMember放置什么,以便僅具有整數值列表? 不設置它們將不顯示任何內容。

我與其他List<myObj>一起工作,其中DisplayMemberValueMember是myObj的屬性。 簡單的數據類型,例如intstring呢?

檢索所選項目時,可以簡單地(int)(combo.SelectedItem)或必須通過與ValueMember對應的屬性?

不會發生此問題,因為您有一個整數列表,它可能是由於將項目分配給.DataSource屬性之后將項目添加到列表中而.DataSource 列表沒有機制來向其添加或刪除項目時通知其容器。

在將項目分配給.DataSource屬性之前,將其添加到列表中,或者使用Krishnraj Rana建議的包裝器(如BindingSource

在這里, BindingSource成為圖片。 您可以像這樣使用它。

BindingSource bSource = new BindingSource();
bSource.DataSource = new List<int> { 1, 2, 3 };
combo.DataSource = bSource;

雖然可以直接用列表設置組合框的數據源。 像這樣 -

combo.DataSource = intList;

這也很好用。

您可以像這樣使用foreach從列表中添加項目。

foreach (var v in intList)
{
   comboBox1.Items.Add(v.ToString());
}

暫無
暫無

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

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