我試圖讓listbox1.SelectedItems的所有標籤,所以我想用這樣一個foreach:不能存取權限列表項
foreach (ListItem itm in listBox1.SelectedItems)
{
MessageBox.Show(itm.Tag);
}
但VS2010沒有找到「列表項」和我需要添加特定的參考..但我找不到它。我可以做其他事情嗎?或者我可以在哪裏找到參考或裝配。 謝謝!
我試圖讓listbox1.SelectedItems的所有標籤,所以我想用這樣一個foreach:不能存取權限列表項
foreach (ListItem itm in listBox1.SelectedItems)
{
MessageBox.Show(itm.Tag);
}
但VS2010沒有找到「列表項」和我需要添加特定的參考..但我找不到它。我可以做其他事情嗎?或者我可以在哪裏找到參考或裝配。 謝謝!
財產listBox1.SelectedItems
返回Object
的集合。這些是您選擇的實際對象。沒有ListItem
對象。
嘗試使用var
關鍵字。然後讓編譯器通過將光標懸停在它上面來確定它的類型。它向你展示了什麼樣的對象類型?
它似乎是ListViewItem
但是,您嘗試使用ListItem
類型。
listBox1.SelectedItems
返回對象的集合,因此它取決於它們在將它們添加到列表框時的類型。如果添加它們作爲字符串,例如,你可以這樣做:
foreach (String str in listBox1.SelectedItems)
{
MessageBox.Show(str);
}
listBox1.SelectedItems的類型ListBox.ObjectCollection的。你爲什麼要轉換成ListItem?
您可以創建一個自定義對象,使用其綁定到ListBox對象:
listBox1.DataSource = YOUR_CUSTOM_OBJECT_ARRAY
然後通過你的項目迭代:
foreach (YOUR_CUSTOM_OBJECT itm in listBox1.SelectedItems)
{
MessageBox.Show(itm.CUSTOM_PROPERTY);
}
您可以在這裏找到一個例子: http://mcpmag.com/articles/2004/02/01/bind-data-to-winforms-controls.aspx
我認爲這有點矯枉過正,因爲ListViewItem具有XandrUu想要的Tag屬性。 – Aphelion
如果您正在尋找解析並將數據綁定集合顯示到您的ListBox,Gordon有答案。如果您正在尋找解析視覺樹並獲取ListItem,那麼VisualTreeHelper類就擁有了解析這些數據所需的所有東西。
http://msdn.microsoft.com/en-us/library/system.windows.media.visualtreehelper.aspx
嘗試使用'var'關鍵字。然後讓編譯器通過將光標懸停在它上面來確定它的類型。 – Aphelion
我想檢索項目的標籤,因爲它與項目的文本不同。 – XandrUu
WinForms應用程序 – XandrUu