2010-10-04 82 views
1

嗨我想設置我的silverlight richtext框的Xaml屬性。Silverlight RichtextBox Xaml屬性,無法設置值(例外)

this.Dispatcher.BeginInvoke(() => 
{ 
    richTextBox1.Xaml = "<Paragraph>Blah</Paragraph>"; 
}); 

不過,我得到下面的異常..

System.ArgumentException: value 
    at System.Windows.Controls.RichTextBox.set_Xaml(String value) 

任何人能解釋一下嗎?
也許我不在

+0

對於一個有趣的問題+1。 RichTextBox的幫助頁面不提供有關如何執行此操作的任何線索:http://msdn.microsoft.com/en-us/library/system.windows.controls.richtextbox.xaml(VS.95).aspx – 2010-10-04 15:59:24

回答

7

您實際上想要將一個XML名稱空間添加到字符串中,以便可以解析Paragraph對象。像:

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 

正如你真的只想要一個單一的xmlns條目,用一個Section塊包圍它。你完成工作的字符串會是這樣的:

richTextBox1.Xaml = "<Section xmlns=\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\"><Paragraph>Blah</Paragraph></Section>"; 

若要這一點,我輸入的文本到一個RichTextBox(例如,「嗒嗒」),然後觀察textbox1.Xaml財產(總是使用調查工作方法先來看看什麼出來它)

+0

謝謝 !事實上,MS頁面並沒有提到這一點。 – 2010-10-04 16:06:56