Bindowanie ComboBoxa do Listboxa

Bindowanie ComboBoxa do Listboxa
MA
  • Rejestracja:około 17 lat
  • Ostatnio:4 miesiące
  • Lokalizacja:Poznań
0

Listbox jest podmontowany pod DataBindingSource. Problem mam żeby podpiąć pod ComboBoxa List<string>. Czyli dla aktualnego obiektu w ListBoxie, w Combo mają być wyświetlone jego elementy listy Address

Kopiuj
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            textBox1.DataBindings.Add("Text", bindingSource1, "Name", true, DataSourceUpdateMode.OnPropertyChanged);
            //comboBox1.DataSource = listBox1.SelectedItem;
            //comboBox1.DisplayMember = "Address";
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Test t = new Test();
            t.Name = "TEST";
            t.Address.Add("AAA");
            t.Address.Add("BBB");

            bindingSource1.Add(t);
        }
    }


    public class Test
    {
        public Test()
        {
            Address = new List<string>();
        }

        public string Name
        {
            get;
            set;
        }

        public List<string> Address
        {
            get;
            set;
        }
    }
}
edytowany 1x, ostatnio: maciejmt
MB
  • Rejestracja:prawie 13 lat
  • Ostatnio:ponad 12 lat
  • Postów:7
0

comboBox1.DataBindings.Add("DataSource", bindingSource1, "Address",true)

MA
  • Rejestracja:około 17 lat
  • Ostatnio:4 miesiące
  • Lokalizacja:Poznań
0

Prawie dobrze ale... dodanie elementów do datasourc'a, nie powoduje odświeżenie Items w ComboBoxie.

MB
  • Rejestracja:prawie 13 lat
  • Ostatnio:ponad 12 lat
  • Postów:7
0
maciejmt napisał(a):

Prawie dobrze ale... dodanie elementów do datasourc'a, nie powoduje odświeżenie Items w ComboBoxie.

Możesz rozwinąć o co Ci konkretnie chodzi

edytowany 1x, ostatnio: MBąk
MA
  • Rejestracja:około 17 lat
  • Ostatnio:4 miesiące
  • Lokalizacja:Poznań
0

Zobacz w załącznik.
Dodaje do aktualnego itemu, jakiś element Address. Odświeżenie ComboBoxa nie następuje automatycznie (trzeba przeklikać)

MB
  • Rejestracja:prawie 13 lat
  • Ostatnio:ponad 12 lat
  • Postów:7
0

Bo nie będzie działać. Zamień List na BindingList to zacznie działać.
Dodatkowo jeśli chcesz żeby działało bindowanie do Name to musisz zaimplementować INotifyPropertyChanged.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.