我如何製作Panel.Validate()
和Panel.ValidateChildren()
?如何製作Panel.Validate()方法?
我需要這個,因爲我在我的面板上有一個工具條。我包含2個按鈕(保存並取消)。
保存應調用Panel.Validate()
和Panel.ValidateChilden()
。
取消不應該調用任何東西。編號: 更多的解釋是必要的。 面板上的文本框正在驗證用戶何時離開文本框。但是當我點擊保存按鈕時,用戶不會離開活動文本框。因此它沒有被驗證,允許他保存損壞的數據。我不想強迫他離開(通過將焦點設置爲另一個控件),因爲他可能想要在按下保存後繼續在文本框中輸入內容。
我現在通過調用Form.ValidateChildren()來處理它,當我點擊保存按鈕。它可以工作,但會驗證表單上的所有控件。不只是我面板中的那些。
private void button1_Click(object sender, EventArgs e)
{
if (ParentForm.ValidateChildren())
this.Save();
else
MessageBox.Show("Error in validating");
}
EDIT2:
解決。 我只是使用containercontrol而不是Panel。它給了我我需要的東西。 (實際上我現在不知道這個控制)
哪裏?我沒有在System.Windows.Forms.Panel中選擇任何Panel.ValidateChildren()。 [link] http://msdn.microsoft.com/en-us/library/System.Windows.Forms.Panel(v = vs.110).aspx – user1808976
ValidateChildren是ContainerControl的一種方法,但Panel不是從ContainerControl,所以它不能調用這個方法。 – user1808976