我试图确保样式TextBlock
的所有HeadingL4
元素都以所有大写字母结束,理想情况下,没有任何明确引用任何{中的任务所需的值转换器{1}}自己(毕竟,在未来的某个时刻,企业将完全有可能决定使用小型上限或下划线或大胆标题)。
我以为自己是一个有风格的东西
TextBlock
然而,虽然这会导致转换,但TextBlock中的值不会更新,这意味着转换可能发生得太晚或太早;转换是采用样式然后<Style TargetType="TextBlock" x:Key="HeadingL4" BasedOn="{StaticResource CustomBase}">
<Setter Property="Text" Value="{Binding Text, RelativeSource={RelativeSource Self}, Converter={StaticResource AllCapsConverter}}" />
</Style>
应用(使用本地属性值覆盖样式值),或者 - 正确 - Text={Binding MyHeading}
应用,然后是样式(采用{{1值并将其转换为全部大写版本),但无论出于何种原因,视图永远不会使用新值进行更新(可能因为就其而言,值是相同的?)。
有人能告诉我如何通过样式为MyHeading
元素的MyHeading
属性正确注入转换器吗?
我应该补充一点,完全有可能这是显而易见的事情 - 我是WPF的相对新手,甚至更像造型。