【发布时间】:2012-08-06 22:39:11
【问题描述】:
我在将依赖属性设置为 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
提前谢谢你:)
【问题讨论】:
-
ActualWidth属性不是要设置的,它是只读的 -
也许你应该把
x:Name="overflowControl1"给RichTextBlockOverflow而不是DataTemplate -
看起来 tmp 为空???但是当 findname 找不到元素时,它应该抛出异常(除了这个名字存在的事实)