2013-05-12 108 views
0

我需要在WPF的RichTextBox的flowdocuments一些先進的驗證,是這樣的:WPF Richttextbox自定義驗證

一)格式只能不跨度允許 C是應用到整個段落 B))這些規則還需要要應用於從剪貼板粘貼的文本。

這樣做的最佳方法是什麼?

+1

你到現在爲止嘗試過什麼? – Viv 2013-05-12 11:54:44

+0

沒什麼,我只是在尋找一些可能的解決方案。我想通過設計禁用一些不正確的輸入。 – Creator 2013-05-12 16:41:32

回答

0

將事件處理程序添加到textchanged事件中,並應用您需要的任何格式。無論文本在文本框中如何更改(通過剪貼板粘貼/從鍵盤輸入),該事件都會觸發。

<RichTextbox x:Name="myTextbox" TextChanged="myTextbox_TextChanged"/> 

private void myTextbox_TextChanged(object sender, EventArgs e) 
{ 
//Apply formatting here 
} 

編輯:另外,如果你的文字,勢必某種數據源,你可以實現對結合數據驗證將突出文本框的紅色,並確保用戶輸入所需的輸入。

<RichTextbox x:Name="myTextbox" Text="{Binding TextSource, ValidatesOnExceptions=True}"/> 

在TextSource setter方法,你會拋出一個異常,如果輸入的數據不符合您的要求。

+0

你能解釋一下如何設置上下文工具欄來啓用只有規則的格式?因爲我想完全禁用用戶輸入一些錯誤文本的可能性(在輸入的情況下) – Creator 2013-05-12 16:37:27