क्या मैं पूछ सकता हूं कि दोनों comboboxes एक दूसरे को क्यों ट्रिगर करते हैं कि दोनों के समान मूल्य हैं? क्या मैं एक ही सूची साझा नहीं कर सकता हूं और अलग-अलग चयनित पाठ के साथ 2 comboboxes हो सकता है?साझा करें कॉम्बोबॉक्स डेटासोर्स
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(ComboBox combobox, BindingList<string> list)
{
// commented lines are in actual code,
// but appears unimportant in this question
//combobox.DropDownStyle = ComboBoxStyle.DropDown;
//combobox.AutoCompleteSource = AutoCompleteSource.ListItems;
//combobox.AutoCompleteMode = AutoCompleteMode.Suggest;
combobox.DataSource = list;
//combobox.Focus();
//combobox.Text = string.Empty;
//combobox.SelectedText = string.Empty;
}
अद्यतन: ठीक है, अब मुझे पता चला मुद्दा यह है कि डेटा स्रोत कुछ BindingContext और CurrencyManager द्वारा किया जाता है स्वचालित रूप से सूची सिंक्रनाइज़ करने के लिए है। लेकिन मुझे लगता है कि किसी को यह पता होना चाहिए कि इस व्यवहार को कैसे अक्षम किया जाए।
मैं 2 अलग-अलग सूचियों का उपयोग नहीं करना चाहता क्योंकि मैं रनटाइम पर इस एकल सूची को संशोधित करने में सक्षम होना चाहता हूं और सभी कॉम्बोबॉक्स पर परिवर्तन दिखाई दे सकते हैं। इसे प्राप्त करने के लिए कोई भी विधि बहुत सराहना की जाएगी।
ठीक है, मैं इसकी पुष्टि कर सकता हूं। आप 'cind1) को' bind() 'को सरल बनाना चाहिए (dataSource = list;' –
@ हेनक चेतावनी क्या है? – Jake
मुझे सटीक कारण नहीं पता है, सरलीकरण समस्या को बेहतर (संकीर्ण) परिभाषित करना है। –