问题:
我正在尝试访问在窗口资源中定义的命名Run
元素。FlowDocument
为了澄清我的意思,请考虑以下代码:
<Window.Resources>
<FlowDocument x:Key="doc">
<Paragraph>
<Run x:Name="run" />
</Paragraph>
</FlowDocument>
</Window.Resources>
在这里,我将尝试访问Run
名为“run”的元素。
到目前为止我尝试过的:
只需使用元素的名称即可访问它。但是,窗口资源中的命名元素显然不具有与窗口内容中定义的元素相同的默认可访问性,因为这种方法不起作用。
尝试向
Run
元素添加一个键,然后通过该FindResource()
方法访问该元素。不幸的是,似乎无法将键添加到嵌套元素中。下面的代码,它抛出一个
NullReferenceException
:FlowDocument doc = (FlowDocument)FindResource("doc"); ((Run)doc.FindName("run")).Text = "example text";