我想动态更改网格样式。为此目的,假设我有3个文本块,其中定义了3个内容。
<TextBlock x:Name="Block1" Text="key1" />
<TextBlock x:Name="Block2" Text="key2" />
<TextBlock x:Name="Block3" Text="key3" />
对于每个键(1,2,3),都有一个用名称x:Key =&#34; key1&#34;定义的样式。 现在我想在我的网格中找到这样的东西:
<Grid Style="{DynamicResource {Binding ElementName=Block1, Path=Text}} />
这可以在默认XAML中使用,还是必须找到解决方法?
答案 0 :(得分:0)
这可以在默认XAML中使用,还是必须找到解决方法?
不,我担心你不能将StaticResource
或DynamicResource
标记扩展名与“动态”值一起使用。必须在编译时知道资源的密钥。
绑定到属性并使用转换器将是一种方式:
<Grid Style="{Binding ElementName=Block1, Path=Text, Converter={StaticResource converter}}">
但我想这是一种解决方法。