2012-09-07 56 views
0

這個接合非常簡單,但我從來沒有聽說過依賴屬性。 所以,我一直在編碼,直到我嘗試設置富文本框的值。設置RichTextBox的值

它沒什麼特別之處,只是豐富的文本框。

當我嘗試設置值時,我需要一個依賴屬性。我聽說這是一個.NET的東西,但我從來不需要使用它。

那麼,有人可以告訴我,如何做到這一點?

這將是該解決方案?:

public static readonly DependencyProperty myDP = 
    DependencyProperty.Register(
    "richtextbox", typeof(Boolean)); 

到最後是這樣的:rtb.setValue(myDP, "Text"); 而且因爲我有很多豐富的文本框,做我需要爲每個域的DP?

不要誤解我的意思,但這是Google不夠好的地方。

+0

你是說'RichTextBox'的'Text' [屬性](http://msdn.microsoft.com/en-us/library/system.windows.forms.richtextbox_properties.aspx)? –

+0

@ChibuezeOpata:根據[文檔](http://msdn.microsoft.com/en-US/library/system.windows.controls.richtextbox.aspx),「RichTextBox」沒有「Text」屬性。不過,它具有['Document'屬性](http://msdn.microsoft.com/zh-CN/library/system.windows.controls.richtextbox.document.aspx)。 –

+0

哦,他使用WPF嗎? –

回答

1

RichTextBox的內容可通過其Document property訪問。

不知何故,某些東西肯定給了你關於依賴屬性的完全錯誤的想法; WPF控件(如RichTextBox)有可以使用的依賴項屬性。如果你只是想分配一個值,你不需要創建任何東西。

此外,您幾乎不必爲任何依賴項屬性調用SetValue方法; WPF控件和其他依賴對象通常爲每個依賴項屬性提供屬性包裝,使您可以像使用那樣使用屬性,因此對rtb.Document. ...的調用應該沒問題。

更新:想着這再次,我認爲下面的解釋也會對你有所幫助:

你已經找到了SetValue method,這需要它的一個參數一個DependencyProperty。通常,對於任何對象的任何依賴項屬性,都有一個公共靜態只讀字段,它公開相應的DependencyProperty實例。例如,TextBox級別爲其Text property提供TextProperty field

+0

您的意思是rtb.Document =「Text here」; ? – Clue

+0

@線索:不,「RichTextBox」不適用於編輯簡單文本。它需要是一個'FlowDocument'。 –

2

我認爲你正在尋找Text屬性。 rtb.Text = "Blah blah blah";

對於WPF,您可以使用Document屬性與FlowDocument對象。請參閱guide。而例如,從msdn

FlowDocument myFlowDoc = new FlowDocument(); 

// Add paragraphs to the FlowDocument. 
myFlowDoc.Blocks.Add(new Paragraph(new Run("Paragraph 1"))); 
myFlowDoc.Blocks.Add(new Paragraph(new Run("Paragraph 2"))); 
myFlowDoc.Blocks.Add(new Paragraph(new Run("Paragraph 3"))); 
RichTextBox myRichTextBox = new RichTextBox(); 

// Add initial content to the RichTextBox. 
myRichTextBox.Document = myFlowDoc; 

如果你需要設置任何控件的屬性在.net中搜索該控件的屬性或直接按F1 你插入符是VisualStudio的控制裏面看到usage and examples

+0

但我不打算使用myRichTextBox如此身臨其境。它會更像myRichTextBox.Document =「文本」;這有效嗎? – Clue

+0

不,應該是流文件,我提供的服務將告訴你如何使用'RichTextBox'指導,如果你想要簡單的東西我建議你去一個WPF文本框,這也提供了多以及造型。 .. –