[英]C# programmatically change selected item in listview
更新!
為了澄清這個問題。 我想使用向上和向下箭頭更改列表視圖中的選定項目。 我已將keydown綁定到文本框。 如果用戶按下句點鍵,我將使我的列表視圖可見。 但這不是重點,這就是為什么我將keydown事件綁定到文本框以便能夠更改listview中的selecteditem的原因。
visuaöstudio抱怨的代碼是這個
index = listView1.SelectedIndices[0];
零是怎么回事?
我正在使用列表視圖 !
如何以編程方式更改listview selecteditem
? 我目前正在聽向上箭頭和向下箭頭的按鍵事件。
按下它們后,我想更改所選項目的索引。 這樣它的行為就與按下向上或向下箭頭使其聚焦時一樣!
我一直在嘗試,但這給了我一個難看的錯誤信息。
超出范圍的異常參數帶有如下附加信息:
值0對索引無效。 這是我的向下箭頭代碼。
它真的應該工作,我對此一無所知!
if (e.KeyCode == Keys.Down)
{
if (listView1.Visible)
{
index = listView1.SelectedIndices[0];
index = index - 1;
this.listView1.Items[index].Selected = true;
}
}
和向上箭頭
if (e.KeyCode == Keys.Up)
{
if (this.listView1.Visible)
{
index = listView1.SelectedIndices[0];
index++;
this.listView1.Items[index].Selected = true;
}
}
嘗試以下方法:
if (e.KeyCode == Keys.Down)
{
if (listView1.Visible && listView1.Items.Count > 0)
{
index = listView1.SelectedIndices[0];
index = index - 1;
this.listView1.Items[index].Selected = true;
}
}
我認為您正在獲取IndexOutOfBound
因為列表中沒有任何項目。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.