簡體   English   中英

控制用戶對文本字段的輸入

[英]Control user input to textfields

尋找一種方法來控制文本字段中的用戶輸入。 即一個字段可以是雙精度字段,一個字段字符串,一個字段int。 有沒有可以用來照顧我的圖書館?

使用:VS 2008,C#,WPF

int.TryParse()

容易得多!

您可以嘗試在文本框上使用正則表達式來約束/驗證用戶輸入...

http://msdn.microsoft.com/en-us/library/ms998267.aspx

可以使用文本框的Validate事件來設置驗證委托,以確保文本框具有有效的文本:

textbox1.Validate += delegate(sender, eventArguments)
                     {
                         double val;
                         if (!int.TryParse(textbox1.Text, out val)
                         {
                             eventArguments.Cancel = true;
                         }
                     }

但是,直到有問題的控件失去焦點之前,不會引發Validate事件,這可能無法提供您所需的用戶體驗,即,用戶將能夠鍵入無效的值,並且直到他們嘗試離開控件時,它才會出現文本將被驗證。 如果您實際上想防止鍵入無效字符或值,則可能需要在每個步驟中攔截TextChanged事件並驗證文本。

如果您確實選擇對TextChanged做出反應,那么請注意中間值可能無法解析為所需的類型-例如,如果文本框被限制為日期,並且用戶嘗試輸入“ 26/11/2009”,則文本將在第一個字符(不是有效日期)之后為“ 2”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM