溫馨提示×

如何在C#中使用數據綁定進行數據校驗

c#
小樊
118
2024-08-30 23:19:31
欄目: 編程語言

在C#中,數據綁定和數據校驗通常與Windows Forms或WPF應用程序一起使用

  1. 創建一個數據模型類,該類將表示要綁定的數據。在這個例子中,我們將創建一個Person類:
public class Person : INotifyPropertyChanged, IDataErrorInfo
{
    private string _name;
    public string Name
    {
        get { return _name; }
        set
        {
            if (_name != value)
            {
                _name = value;
                OnPropertyChanged("Name");
            }
        }
    }

    // 實現INotifyPropertyChanged接口
    public event PropertyChangedEventHandler PropertyChanged;
    protected virtual void OnPropertyChanged(string propertyName)
    {
        PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
    }

    // 實現IDataErrorInfo接口
    public string Error => null;
    public string this[string columnName]
    {
        get
        {
            string result = null;
            if (columnName == "Name")
            {
                if (string.IsNullOrEmpty(_name))
                    result = "Name cannot be empty";
                else if (_name.Length < 3)
                    result = "Name must be at least 3 characters long";
            }
            return result;
        }
    }
}
  1. 在你的窗體或控件上創建一個文本框(TextBox),并將其Text屬性綁定到Person類的Name屬性:
// 創建一個Person實例
Person person = new Person();

// 創建一個Binding對象,將TextBox的Text屬性綁定到Person的Name屬性
Binding binding = new Binding("Text", person, "Name");
binding.ValidatesOnDataErrors = true; // 啟用數據錯誤校驗

// 將Binding對象添加到TextBox的Bindings集合中
textBoxName.DataBindings.Add(binding);
  1. 當用戶輸入數據時,數據綁定會自動將數據傳遞給Person類的Name屬性。同時,由于我們已經啟用了數據錯誤校驗,所以當用戶輸入無效數據時,將顯示一個錯誤提示。

這就是在C#中使用數據綁定進行數據校驗的基本方法。請注意,這里的示例是針對Windows Forms應用程序的,但是在WPF應用程序中,數據綁定和數據校驗的實現方式會有所不同。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女