开发者

Is it possible to assign value to a precreated Paragraph in RichTextBox

Consider the following XAML code:

<RichTextBox Name="dataRichTextBox" VerticalScrollBarVisibility="Auto" >
    <FlowDocument Name="dataFlowDocument" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
        <Paragraph Name="dataParagraph">

        </Paragraph>
    </FlowDocument>
</RichTextBox>

What I would like to do is, directly assign a a Paragraph, created programmatically, to dataParagraph as defined in the XAML.

the code for that looks something like:

Paragraph paraOne = new Paragraph();
Run run1 = new Run("I am run one"+Environment.NewLine);
// run1.Background = Brushes.Green;
paraOne.Inlines.Add(run1);
dataParagraph = paraOne; // expect that it will show up on the RichTextBox.

I have tried it, and it doesn't work. The examples I read so fa开发者_开发知识库r, all seem to create the FlowDocument, Paragraph Programmatically and then assign Runs' to them. Is it possible to achieve it the way I have implemented.


You can't replace the paragraph declared in XAML with a new one, but you can work with it directly.

Keeping your XAML as-is, change your code to this, and it will work:

dataParagraph.Inlines.Add(new Run("I am run one" + Environment.NewLine));

Alternatively, just add the new paragraph to the FlowDocument, rather than trying to assign it to the existing paragraph.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜