Mam ComboBox powiązany ze źródłem danych, ale nie aktualizuje powiązań, dopóki kontrola nie straci fokusu. Jak mogę zaktualizować powiązania po zmianie wybranych elementów? Na poniższym zrzucie ekranu chciałbym, aby etykieta została natychmiast zaktualizowana, aby odzwierciedlić nowy wybór.Składnik ComboBox nie aktualizujący wiązania DataBind na wybranym zmienionym elemencie (WinForm)
Część kodu: Formularz
public enum MyEnum
{
First,
Second
}
public class MyData
{
public String Name { get; set; }
public MyEnum MyEnum { get; set; }
}
próbki:
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));
}
To działało również dla mnie. Dzięki. Ale nie ładuje wartości początkowej MyEnum. Czy muszę to robić ręcznie? – ehmunnehm
@ehmunnehm Nie wiem, jak wygląda twój kod, aby na nie odpowiedzieć. Spróbuj opublikować nowe pytanie z odpowiednim kodem reprodukcyjnym. – LarsTech