我在从列表框或DataGrid返回所选项时遇到问题。问题是,我特别希望用户双击所选项目,而不是控件上的任何其他项目(与DoubleClick事件一样)。 目前我有这个:
private void listBox1_DoubleClick(object sender, EventArgs e)
{
if (listBox1.SelectedItem == null) return;
System.Console.WriteLine(listBox1.SelectedItem.ToString()); //console for testing
}
虽然它有效但我不喜欢这样一个事实:你可以点击一次项目,然后双击控件空白处的任意位置,它将返回先前选择的项目。有没有简单的方法来改变它?
答案 0 :(得分:0)
你应该得到双击事件发生的项目index from the location:
int index = listBox1.IndexFromPoint(e.Location);
if (index != System.Windows.Forms.ListBox.NoMatches)
{
System.Console.WriteLine(listBox1.SelectedItem.ToString()); //console for testing
}