2010-09-05 77 views
3

我是Windows Phone 7開發平臺的新手。我試圖對文本框輸入進行驗證。在調試時,如果輸入無效,我得到錯誤「exception was unhandled」。如何解決這個問題?這段代碼適用於Silverlight應用程序。輸入驗證在Windows Phone 7中的文本框中

TextBox Text="{Binding Name, Mode=TwoWay, NotifyOnValidationError=True, ValidatesOnExceptions=True}" /> 

private string _name; 
public String Name 
     { 
      get { return _name; } 
      set { 

       if (string.IsNullOrEmpty(value)) 
       { 
        throw new Exception("invalid name"); 
       } 
       _name = value; 
       OnPropertyChanged("Name"); 
      } 
     } 

回答

1

試圖設置無效值時,您是否試圖捕獲invalid name異常?

+1

將try-catch塊放在屬性設置器內部工作,但我必須使用消息框來顯示錯誤消息。在文本框旁顯示錯誤消息的silverlight類型樣式中輸出異常的方式是什麼 – rk1 2010-09-05 08:13:30

1

我有同樣的問題,並發現了以下的答案:

確保不編程方式調用視圖模型的制定者,因爲在這種情況下,你必須照顧例外,太。 如果讓數據綁定嘗試更新底層視圖模型,它也會爲您處理異常。