
txtSurname .ValidateControl() .IsNotNullOrWhitespace(); txtName .ValidateControl() .IsNotNullOrWhitespace(); txtMiddleName .ValidateControl() .IsNotNullOrWhitespace(); nmAge .ValidateControl() .IsTrue(ctl => ctl.Value >= 16, " 16 .", ValidationType.Required) .IsTrue(ctl => ctl.Value >= 21, " (21+) .", ValidationType.Optional); txtEMail .ValidateControl() .IsValidEMail(false); butSave .ValidateControl() .EnableByValidationResult(); public partial class frmMain : Form { public frmMain() { InitializeComponent(); // , txtSurname .ValidateControl() .IsNotNullOrWhitespace(); txtName .ValidateControl() .IsNotNullOrWhitespace(); txtMiddleName .ValidateControl() .IsNotNullOrWhitespace(); // 16 // ( ) 21 nmAge .ValidateControl() .IsTrue(ctl => ctl.Value >= 16, " 16 .", ValidationType.Required) .IsTrue(ctl => ctl.Value >= 21, " (21+) .", ValidationType.Optional); // e-mail' txtEMail .ValidateControl() .IsValidEMail(false); // / butSave .ValidateControl() .EnableByValidationResult(); } } 

// var categoryCheckBoxes = pnlCategories.Controls.Cast<CheckBox>(); // dtBegin.EnableByTimer(() => chkFilterByDate.Checked); dtEnd.EnableByTimer(() => chkFilterByDate.Checked); pnlCategories.EnableByTimer(() => chkFilterByCategory.Checked); pnlTextFilter.EnableByTimer(() => chkFilterByText.Checked); dtEnd .ValidateControl() .IsTrue(ctl => !chkFilterByDate.Checked || dtBegin.Value >= new DateTime(1990, 1, 1), " 1990 ") .IsTrue(ctl => !chkFilterByDate.Checked || dtBegin.Value <= dtEnd.Value, " "); pnlCategories .ValidateControl() .IsTrue(ctl => !chkFilterByCategory.Checked || categoryCheckBoxes.Any(c => c.Checked), " "); pnlTextFilter .ValidateControl() .IsTrue(ctl => !chkFilterByText.Checked || chkSearchTextInBody.Checked || chkSearchTextInHeader.Checked, " ") .IsTrue(ctl => !chkFilterByText.Checked || !string.IsNullOrWhiteSpace(txtSearchText.Text), " "); gbSearchParameters .ValidateControl() .IsTrue(ctl => chkFilterByCategory.Checked || chkFilterByDate.Checked || chkFilterByText.Checked, " ."); butSearch .ValidateControl() .EnableByValidationResult(); using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using Teleavtomatika.Forms; namespace Teleavtomatika_Form_Validation { public partial class frmMain2 : Form { public frmMain2() { InitializeComponent(); // var categoryCheckBoxes = pnlCategories.Controls.Cast<CheckBox>(); // dtBegin.EnableByTimer(() => chkFilterByDate.Checked); dtEnd.EnableByTimer(() => chkFilterByDate.Checked); pnlCategories.EnableByTimer(() => chkFilterByCategory.Checked); pnlTextFilter.EnableByTimer(() => chkFilterByText.Checked); // : // , // 1990 // DatePicker', dtEnd dtEnd .ValidateControl() .IsTrue(ctl => !chkFilterByDate.Checked || dtBegin.Value >= new DateTime(1990, 1, 1), " 1990 ") .IsTrue(ctl => !chkFilterByDate.Checked || dtBegin.Value <= dtEnd.Value, " "); // // pnlCategories .ValidateControl() .IsTrue(ctl => !chkFilterByCategory.Checked || categoryCheckBoxes.Any(c => c.Checked), " "); // // // pnlTextFilter .ValidateControl() .IsTrue(ctl => !chkFilterByText.Checked || chkSearchTextInBody.Checked || chkSearchTextInHeader.Checked, " ") .IsTrue(ctl => !chkFilterByText.Checked || !string.IsNullOrWhiteSpace(txtSearchText.Text), " "); // - gbSearchParameters .ValidateControl() .IsTrue(ctl => chkFilterByCategory.Checked || chkFilterByDate.Checked || chkFilterByText.Checked, " ."); // "": butSearch .ValidateControl() .EnableByValidationResult(); } } } Source: https://habr.com/ru/post/209820/
All Articles