我可以问为什么两个组合框都相互触发,这两个都有相同的值?
我不能共享一个列表,并有两个组合框与不同的选定文本?
我不能共享一个列表,并有两个组合框与不同的选定文本?
private void Form1_Load(object sender,EventArgs e) { BindingList<string> list = new BindingList<string>(); list.Add("A"); list.Add("B"); list.Add("C"); list.Add("D"); bind(cbo1,list); bind(cbo2,list); } private void bind(Combo@R_301_460@ combo@R_301_460@,BindingList<string> list) { // commented lines are in actual code,// but appears unimportant in this question //combo@R_301_460@.DropDownStyle = Combo@R_301_460@Style.DropDown; //combo@R_301_460@.AutoCompleteSource = AutoCompleteSource.ListItems; //combo@R_301_460@.AutoCompleteMode = AutoCompleteMode.Suggest; combo@R_301_460@.DataSource = list; //combo@R_301_460@.Focus(); //combo@R_301_460@.Text = string.Empty; //combo@R_301_460@.SelectedText = string.Empty; }
更新:
好的,现在我发现问题是DataSource由一些BindingContext和CurrencyManager管理,以自动同步列表.但是我觉得有人必须知道如何禁用这种行为.
我不希望使用2个不同的列表,因为我希望能够在运行时修改这个单一的列表,并且更改会反映在所有Combo@R_301_460@中.任何实现这一点的方法都将不胜感激.