我已经创建了自定义窗口控件(从Window继承),除了状态栏的文本外,一切都很好。我在控件中添加了一个名为“StatusText”的新属性,该文本以我的控件风格显示在TextBlock内。如何更新WPF自定义样式的一部分
但是,当我更改我的窗口的StatusText属性文本不会更改,它不会更新。另一方面,如果我更改窗口的标题属性(这是一个继承属性),标题会正确更改。
所以,也许我没有正确地宣布我的StatusText属性?或者我需要明确要求我的样式中的TextBlock更新?
感谢您的帮助。
状态文本财产申报:
private string m_StatusText;
public string StatusText
{
get { return m_StatusText; }
set { m_StatusText = value; }
}
XAML样式状态栏:
<!-- Status area -->
<Border Grid.Row="2" Style="{DynamicResource SFM_StatusAreaStyle}" CornerRadius="0, 0, 7, 7" BorderThickness="1, 1, 1, 0">
<Grid Style="{DynamicResource SFM_TitleBarStyleReflect}">
<TextBlock VerticalAlignment="Center" HorizontalAlignment="Left" Margin="6, 0, 0, 2" Foreground="{DynamicResource B_TextColor}"
Text="{Binding Path=StatusText, RelativeSource={RelativeSource AncestorType={x:Type local:SiluForm}, Mode=FindAncestor}}" />
</Grid>
</Border>
请问您可以发布您的代码吗?我假设你想使用数据绑定来完成文本更改,但没有人确切知道你在做什么,除非你发布代码/ XAML。 – Dave 2010-09-06 14:30:35