Ho un ComboBox associato a un'origine dati ma non aggiornerà i binding finché il controllo non perde il focus. Come posso aggiornare i binding quando cambiano gli elementi selezionati? Nella schermata qui sotto vorrei che l'etichetta si aggiornasse immediatamente per riflettere la nuova selezione.ComboBox che non aggiorna DataBindings sull'elemento selezionato modificato (WinForms)
Alcuni Codice: Modulo
public enum MyEnum
{
First,
Second
}
public class MyData
{
public String Name { get; set; }
public MyEnum MyEnum { get; set; }
}
Esempio:
public SampleForm()
{
InitializeComponent();
MyData data = new MyData() { Name = "Single Item" };
this.bindingSource1.DataSource = data;
this.comboBox1.DataSource = Enum.GetValues (typeof (MyEnum));
this.label2.DataBindings.Add ("Text", this.bindingSource1, "MyEnum", true, DataSourceUpdateMode.OnPropertyChanged);
this.comboBox1.DataBindings.Add (new System.Windows.Forms.Binding ("SelectedItem", this.bindingSource1, "MyEnum", true));
this.comboBox1.DataBindings.Add (new System.Windows.Forms.Binding ("SelectedValue", this.bindingSource1, "MyEnum", true));
}
Questo ha funzionato anche per me. Grazie. Ma non carica il valore iniziale di MyEnum. Devo farlo manualmente? – ehmunnehm
@ehmunnehm Non so a cosa assomigli il tuo codice per rispondere. Prova a pubblicare una nuova domanda con il codice di riproduzione corretto. – LarsTech