设置依赖项属性时发生灾难性错误
问题描述:
将依赖项属性设置为XAML元素时出现问题。 XAML:设置依赖项属性时发生灾难性错误
<local2:RichTextColumns xmlns:local2="using:App2.Common">
<local2:RichTextColumns.ColumnTemplate>
<DataTemplate x:Name="overflowControl1">
<RichTextBlockOverflow Width="1000" Margin="5,0,0,0"/>
</DataTemplate>
</local2:RichTextColumns.ColumnTemplate>
<RichTextBlock Foreground="Black" Width="1000">
<Paragraph>
</Paragraph>
</RichTextBlock>
</local2:RichTextColumns>
C#
var tmp = (DataTemplate)FindName("overflowControl1");
tmp.SetValue(RichTextBlockOverflow.ActualWidthProperty, 100);
它导致
灾难性故障(从HRESULT异常:0x8000FFFF(E_UNEXPECTED))。
我也使用RichTextBlockOverflow.WidthProperty
预先感谢您试过:)
答
尝试
<local2:RichTextColumns xmlns:local2="using:App2.Common">
<local2:RichTextColumns.ColumnTemplate>
<DataTemplate>
<RichTextBlockOverflow x:Name="overflowControl1" Width="1000" Margin="5,0,0,0"/>
</DataTemplate>
</local2:RichTextColumns.ColumnTemplate>
<RichTextBlock Foreground="Black" Width="1000">
<Paragraph>
</Paragraph>
</RichTextBlock>
</local2:RichTextColumns>
C#
var tmp = (RichTextBlockOverflow)FindName("overflowControl1");
tmp.SetValue(RichTextBlockOverflow.WidthProperty, 100);
+0
它看起来像tmp是空的?但是当findname找不到元素时,它应该抛出一个异常(除了这个名字存在的事实之外) – 2012-08-07 14:45:29
答
好找到很好的解决方案。我使用绑定将相同的宽度设置为RichTextBlock和RichTextBlockOverflow。
并不意味着'ActualWidth'要设置的属性,它的只读 – 2012-08-06 22:49:48
也许你应该给'X:NAME =“overflowControl1”'的'RichTextBlockOverflow'不给''的DataTemplate – S3ddi9 2012-08-06 22:51:54
它看起来像TMP是空值 ???但是当findname找不到元素时,它应该抛出一个异常(除了这个名字存在的事实) – 2012-08-07 14:41:24