[英]Listbox Error On Selection Index
我在winform上有一個列表框控件,同樣是Single Items SelectionMode或One Items Selection Mode。 我正在嘗試從form_KeyDown事件滾動它,如下所示
if ((Keys)e.KeyCode == Keys.Down)
{
if (listBox2.Items.Count >= listBox2.SelectedIndex)
{
listBox2.SelectedIndex++;
}
}
但這會引發錯誤,例如“未處理ArgumentOutOfRangeException”。值= 23的無效參數對選擇索引無效。
如何擺脫?
嘗試這個:
if ((Keys)e.KeyCode == Keys.Down)
{
if ((listBox2.Items.Count-1) > listBox2.SelectedIndex)
{
listBox2.SelectedIndex++;
}
}
請記住,如果您有23個項目,則SelectedIndex
從0到22 ...
ListBox.SelectedIndex是從零開始的數組IE,索引中的第一項將為0,而Items.Count始終返回從1開始的值。
請參閱以下內容以獲取更多信息: http : //msdn.microsoft.com/zh-cn/library/system.windows.forms.listbox.selectedindex.aspx
親切的問候,韋恩
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.