1
我有一個ListView在另一個線程,我將項目添加到它的安全線程安全的方式,像這樣:列表視圖中選擇項錯誤
listView1.Invoke(new AddTolstDiscoveredDevices(AddDiscoveryEntry), ReceiveString);
但是當我試圖讓一個選定的項目,它說索引0
是無效的。
我用這樣的:
string IpAdr = listView1.SelectedItems[0].SubItems[0].Text;
誤差= "InvalidArgument=Value of '0' is not valid for 'index'.\r\nParameter name: index"
然後,因爲它是在另一個線程上,我試圖調用這樣的:
public string GetCurrentItem(int location)
{
if (this.listView1.InvokeRequired)
{
getCurrentItemCallBack d = new getCurrentItemCallBack(GetCurrentItem);
return this.Invoke(d, new object[] { location }).ToString();
}
else
{
return this.listView1.Items[location].Text;
}
}
當我打電話,我得到了同樣的錯誤。
我不明白什麼是錯的。
任何幫助表示讚賞。謝謝。
你檢查ListView1的計算,它不爲空? – 2013-06-13 06:40:24
@DarthVader,是的。 'if(this.listView1.SelectedItems.Count!= null){string IpAdress = listView1.SelectedItems [0] .Text; }'它說'1'的值對'index' – Liban
無效,我發現了這個問題。只要我在列表視圖包含的選項卡內,我會從列表視圖中獲取抽取項目。我想我需要重新排列我的gui設計。我不知道爲什麼它不能工作。 – Liban