我有一個ListBox,它由Silverlight 3.0中多個SelectionMode中的網格項組成。使用Silverlight獲取列表框中多個選定項目的索引
當我使用ListBox.SelectedIndex時,它只返回所選的第一個項目。
我希望能夠看到所有選定的項目,以便它將返回所有選定的項目索引,例如; 2,5和7等。
任何幫助嗎?
乾杯,
Turtlepower。
我有一個ListBox,它由Silverlight 3.0中多個SelectionMode中的網格項組成。使用Silverlight獲取列表框中多個選定項目的索引
當我使用ListBox.SelectedIndex時,它只返回所選的第一個項目。
我希望能夠看到所有選定的項目,以便它將返回所有選定的項目索引,例如; 2,5和7等。
任何幫助嗎?
乾杯,
Turtlepower。
您可以通過SelectedItems
迭代,並在Items
屬性找到對象,像這樣的發現所選擇的指標:
List<int> selectedItemIndexes = new List<int>();
foreach (object o in listBox.SelectedItems)
selectedItemIndexes.Add(listBox.Items.IndexOf(o));
或者如果你喜歡LINQ:
List<int> selectedItemIndexes = (from object o in listBox.SelectedItems select listBox.Items.IndexOf(o)).ToList();
謝謝Yogesh,它幾乎工作。 奇怪的是,我只有5個項目在我的列表框中,當我將它們全部返回時,我得到7個項目變爲「0,1,2,3,4,0,0,0」。爲什麼額外的三個0結束? – turtlepower 2010-10-01 03:38:45
5個項目在選定的項目?你可以發佈你正在使用的代碼來「退還」嗎? – Yogesh 2010-10-01 03:41:14
List
你檢查是否有是名爲SelectedIndices/SelectedIndexList或類似的屬性? – 2010-10-01 03:29:14
在Silverlight中的ListBox沒有SelectedIndices,但是非常感謝。 – turtlepower 2010-10-01 03:38:15