listBox控件 当前选中事件
如何让listBox中得到当前选中项且给一个事件?答案就是调用listBox中的属性:SelectionChanged,如在xmal中定义 --- SelectionChanged="theVlaueChanged"在后台再定义private void theVlaueChanged(object sender, SelectionChangedEventArgs e) { MessageBox.Show("进来了哈"); } 这样就达到了我们的预想结果。但是你发现当两次连继同时点击同一个选项时他只会触发一次SelectionChanged事件。原因很简单,ListBox 列表框里面的 Item 被选中后,ListBox 的 SelectedIndex 会被设置为该 Item 的 Index,当第二次选中这个 Item 时,事实上 SelectedIndex 并没有变,因此 SelectionChanged 事件也不会被触发,这个和html中的select中的onChanged方法一样。所以我们将SelectedIndex设为-1,即一个都没选中。代码如下: private void theVlaueChanged(object sender, SelectionChangedEventArgs e) { if (my_list.SelectedIndex == -1) { return; } else { MessageBox.Show("进来了哈"); } my_list.SelectedIndex = -1; }
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。