2
希望這是一個有趣的問題:Winform控件默認值和驗證
比方說,我已經設計了一個對話框使用的winform其中包含了一些控制。 (1)打開此對話框時,我想爲所有控件設置默認值。但是,一個控件的值可能取決於另一個控件(或某些其他控件)的值。 (2)當用戶改變了一個控件的值時,我想驗證整個上下文中的新值。換句話說,我有很多規則說明什麼樣的組合值是可以接受的(如果控件A的值爲1,控件B的值爲2,那麼控件C的值不能爲3)
現在假設我可以保證我所定義的所有「規則」都不會在死循環中結束。
我的問題是:是否有任何已知的框架或普遍的做法來處理這個問題?我不希望它是特定於我創建的特定對話框。我希望它是一個這樣的框架,我只是簡單地定義「規則」 - 規定哪些組合是無效的,規則是什麼是控制的推斷值 - 並且框架將在控制值變化時評估這些規則。
任何想法或評論表示歡迎:)
你能不能給我們什麼樣的規則你想要1個或2個例子將是很好 – MethodMan 2013-04-10 16:15:32
所有規則通常形式的想法:如果(controlA.Value是一些列表中&& controlB.Value是內一些其他列表),那麼controlC不能有值xxx。具體來說,考慮這個例子:假設我們有對話框,用戶可以從亞馬遜,輸入數量和價格中選擇產品。我們還會在對話框中顯示用戶帳戶的餘額。結果是:如果product.SelectValue在折扣列表內,價格將是原始價格乘以0.8。 – Xinchao 2013-04-11 15:26:20
另一個規則可能是數量*價格必須小於賬戶餘額 – Xinchao 2013-04-11 15:41:04