1
是否可以在Winforms屬性控件中實現輸入驗證?例如,我如何驗證/定義「必填字段」?我可以使用錯誤提供程序? 是否可以使用RequiredAttribute(System.ComponentModel.DataAnnotations)?Winforms Propertygrid中的驗證
是否可以在Winforms屬性控件中實現輸入驗證?例如,我如何驗證/定義「必填字段」?我可以使用錯誤提供程序? 是否可以使用RequiredAttribute(System.ComponentModel.DataAnnotations)?Winforms Propertygrid中的驗證
註冊OnValueChanged事件並在那裏完成工作!
propertyGrid.PropertyValueChanged+= new PropertyValueChangedEventHandler(propertyGrid_PropertyValueChanged);
private void propertyGrid_PropertyValueChanged(object s, PropertyValueChangedEventArgs e)
{
if (e.ChangedItem.Label == "???" && !IsValid((int)e.ChangedItem.Value))
{
// the entered value is wrong - show error message
e.ChangedItem.PropertyDescriptor.SetValue(propertyGrid.SelectedObject, e.OldValue);
MessageBox.Show("Wrong Data", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
}
private static bool IsValid(int inputData)
{
// logic here
}
我希望這會幫助你解決問題!