我有列表框,我可以使用鍵盤和鼠標選擇條目(單選模式 - 一次一個),但是當我使用向上和向下箭頭鍵時,它不會選擇列表。但能夠使用箭頭鍵相關的每個實體下方的下劃線滾動列表。由於C#,winform - 使用向上和向下箭頭鍵選擇列表框?
1
A
回答
2
添加處理程序Form1.KeyDown事件:
private Form1_KeyDown(object sender, KeyEventArgs e)
{
this.listBox1.Focus();
this.listBox1.Select();
if (e.Key == Keys.Up)
{
this.listBox1.SelectedIndex--;
}
else if (e.Key == Keys.Down)
{
this.listBox1.SelectedIndex++;
}
}
1
我想你可以使用SendMessage API做到這一點。事情是這樣的:
private const int WM_VSCROLL = 0x115;
[DllImport("user32.dll")]
static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, UIntPtr wParam, IntPtr lParam);
private void listBox_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Down)
{
SendMessage(this.listBox.Handle, (uint)WM_VSCROLL, (System.UIntPtr)ScrollEventType.SmallIncrement, (System.IntPtr)0);
e.Handled = true;
}
if (e.KeyCode == Keys.Up)
{
SendMessage(this.listBox.Handle, (uint)WM_VSCROLL, (System.UIntPtr)ScrollEventType.SmallDecrement, (System.IntPtr)0);
e.Handled = true;
}
}
0
我寫這篇文章的代碼
private void listBox1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Up)
{
int indicee = listBox1.SelectedIndex;
label2.Text = indicee.ToString();
}
if (e.KeyCode == Keys.Down)
{
int indicee = listBox1.SelectedIndex;
label2.Text = indicee.ToString();
}
但是當按下了指數不改變,我認爲代碼必須在其他事件。
0
這是最好的方式,其對我來說
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
int indicee = listBox1.SelectedIndex +1;
label6.Text = indicee.ToString();
ni = indicee-1;
if (ni >= 0)
{ loadender(ni); }
工作正常,當你移動的箭頭鍵列表框的指數變化太大,那麼你就寫你的代碼在此事件。
相關問題
- 1. 列表框地圖J和K鍵向上/向下箭頭鍵
- 2. 用向上/向下箭頭選擇div
- 3. AutoCompleteComboBox箭頭向上/向下箭頭鍵滾動列表
- 4. 添加使用向上和向下箭頭鍵選擇表格行的功能
- 5. 如何禁用silverlight列表框的向上和向下箭頭鍵?
- 6. 使用Javascript(jQuery)選擇帶有箭頭鍵的元素(向上和向下)
- 7. 啓用鍵盤(箭頭向上/向下)在列表項
- 8. 自動建議下拉不選擇使用箭頭向上/向下鍵
- 9. 禁用向上和向下箭頭
- 10. 按鍵[tab,shift,向上/向下/向左/向右箭頭]和firefox
- 11. 刪除黑莓html選擇列表上的向下箭頭?
- 12. jquery sticked向上和向下箭頭向上和向下
- 13. html向上向下箭頭
- 14. 使用向上/向下箭頭鍵滾動到焦點div使用上/下箭頭鍵
- 15. Yii CGridView使用鍵盤的箭頭向上和向下移動選定的行
- 16. 向下或向上箭頭在kendo下拉列表導致列表框顯示
- 17. 向上和向下箭頭的JavaScript
- 18. .keyup()向上和向下箭頭在Safari
- 19. 硒IDE向下箭頭鍵
- 20. 向下箭頭列表中的列表
- 21. 正確使用向上和向下鍵來檢查向上和向下的箭頭
- 22. JavaScript:在輸入文本上使用向上和向下箭頭
- 23. 如何發送LeftShift和向上箭頭或向下箭頭在C#
- 24. 在選擇列表中刪除向下箭頭
- 25. 使用.hover選擇器混合使用向上和向下鍵
- 26. 使用向上和向下箭頭導航不起作用
- 27. 如何將向上和向下箭頭鍵映射到向上和向下翻頁鍵
- 28. 單線與向上/向下箭頭就像是多行選擇框
- 29. 「ASCII」代碼箭頭向上,向下,向左和向右
- 30. 使用向上/向下箭頭導航HTML表單
所以基本上當你按下上/下你想要滾動列表而不是選擇下一個/上一個項目? –
是的..這就是我需要的。 – Dhana