winforms中的DataBinding:即使我单击“更新”;取消”;

本文关键字:更新 取消 单击 DataBinding 中的 winforms | 更新日期: 2023-09-27 18:26:05

我在Winforms中的DataBinding有问题,即使我在表单上单击"取消",对象也会更新。

我已经将Ok按钮的属性"DialogResult"设置为"Ok",将Cancel按钮的属性设置为"Cancel",还将表单的属性"AccesptButton"answers"CancelButton"设置为bnOk和bnCancel。

这是我的代码:

型号:

private string code;
public string Code
{
     get { return code; }
     set { SetPropertyValue<string>("Code", ref code, value); }
}
private string libelle;
public string Libelle
{
     get { return libelle; }
     set { SetPropertyValue<string>("Libelle", ref libelle, value); }
}

UI:

public FamilleTiers CurrentFamilleTiers { get; set; }
private void FamilleTiersForm_Load(object sender, EventArgs e)
{
     txCode.DataBindings.Add("Text", CurrentFamilleTiers, "Code");
     txLibelle.DataBindings.Add("Text", CurrentFamilleTiers, "Libelle");
}

编辑功能:

public static void EditFamilleTiers(FamilleTiers selectedFamilleTiers)
{
   using (FamilleTiersForm form = new FamilleTiersForm() { CurrentFamilleTiers =  selectedFamilleTiers, Text = selectedFamilleTiers.Libelle })
   {
         if (form.ShowDialog() == DialogResult.OK)
         {
             form.CurrentFamilleTiers.Save();
         }
   }
}

感谢您抽出时间

winforms中的DataBinding:即使我单击“更新”;取消”;

当您在表单上单击取消时,数据绑定不会恢复,您需要保留值的备份副本,如果值发生更改,则用原始值替换新值。Net不知道你想做什么。