Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
读取使用内联线填充的C#Textblock文本属性_C#_Wpf_Textblock_Inlines - Fatal编程技术网

读取使用内联线填充的C#Textblock文本属性

读取使用内联线填充的C#Textblock文本属性,c#,wpf,textblock,inlines,C#,Wpf,Textblock,Inlines,假设我有一个空的文本块: textblock1.Text = ""; 然后,我只将内联内容与以下两条语句放在一起: textblock1.Inlines.Add(new Run() { Text = "A. ", Foreground = Brushes.Red }); textblock1.Inlines.Add(new Run() { Text = responses.Current.Value, Foreground = Brushes.Black}); 令人惊奇的是,我可以在我的窗口

假设我有一个空的文本块:

textblock1.Text = "";
然后,我只将内联内容与以下两条语句放在一起:

textblock1.Inlines.Add(new Run() { Text = "A. ", Foreground = Brushes.Red });
textblock1.Inlines.Add(new Run() { Text = responses.Current.Value, Foreground = Brushes.Black});
令人惊奇的是,我可以在我的窗口中正确地可视化内容,但是Textblock的Text属性一直是空的!这会导致问题,因为我需要将此Textblock的值传递给其他Textblock

另一件我真的不明白的事情是,当我第二次调用我的函数时,textblock1.Text属性被正确地更新了!除了第一次之外,每次通话都会正确更新!我在msdn上花了几个小时,但我真的很困惑。此外,我可以在网站上看到:

Text属性返回一个值(InlineCollection中所有运行元素的附加文本)。但是,返回的值不包括已应用于运行元素的任何格式


我已经非常仔细地检查了我的代码并进行了调试,以查看是否还有其他地方可以操作这些属性,但我还没有找到。如果有人有任何想法,对我来说,这件事变得毫无意义了……

我只是想详细阐述一下我的评论,给大家一些意义

Loaded意味着包含元素的逻辑树是完整的

这对我们很有帮助,因为这里的绑定引用了另一个
TextBlock
元素。绑定还依赖于
DataContext
和一些与特定
绑定相关的其他因素,但通常情况下,它们会在UI加载后进行评估,这是有充分理由的


因此,一旦用户界面加载,设置源
TextBlock
Text
,一切工作正常,因为
绑定在该点处于活动状态。

您在代码中何时以及如何使用Text属性的值?是通过绑定还是直接访问该物业?谢谢您的回答!我在后面的代码中也使用这个函数将Textblock1的值添加到另一个textBlock2.Inlines.add(new Run(){Text=TextBlock11.Text+“”,FontSize=25,front=couleurSerie});就这样!我通过在我的代码后面直接访问来实现这一点。您是在视图的代码隐藏构造函数中实现这一点的吗?如果是这样的话,将其移动到窗口的已加载事件,即使是第一次也应该可以。谢谢Viv,它可以工作!!实际上,我并没有在构造函数中执行此操作,而是使用从父窗口调用的函数,所以我猜在启动加载的事件之前。但为什么呢=/