我有两个数据绑定到同一个 BindingList 的 ListBox。
问题是当从 GUI 更改选定项时,它会更改 BindingList 中的位置,然后 BindingList 会向另一个 ListBox 发出信号以更改其选定项。
所以我有两个 ListBoxes Selected Item 也同步,这对我不利。
我想保持同步的项目列表。没有光标位置。
如何禁用该光标以使其不被维护?
示例代码(只需在设计时将两个 ListBoxes 添加到 Form 并注册 SelectedIndexChanged 事件并使用按钮注册按钮单击事件):
public partial class Form1 : Form
{
BindingList<string> list = new BindingList<string>();
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
list.Add("bla1");
list.Add("bla2");
list.Add("bla3");
this.listBox1.DataSource = list;
this.listBox2.DataSource = list;
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (listBox1.SelectedIndex != -1)
System.Diagnostics.Trace.WriteLine("ListBox1: " + listBox1.SelectedItem.ToString());
}
private void listBox2_SelectedIndexChanged(object sender, EventArgs e)
{
if (listBox2.SelectedIndex != -1)
System.Diagnostics.Trace.WriteLine("ListBox2: " + listBox2.SelectedItem.ToString());
}
// Register this event to a button
private void button1_Click(object sender, EventArgs e)
{
list.Add("Test");
}
}
谢谢,--冉。