[英]XAML Set a Resource Key by Binding
我想动态更改网格样式。 为此,让我们假设我有3个Textblock,其中定义了3个Contents。
<TextBlock x:Name="Block1" Text="key1" />
<TextBlock x:Name="Block2" Text="key2" />
<TextBlock x:Name="Block3" Text="key3" />
对于每个键(1,2,3),都有一个用名称x:Key =“ key1”定义的样式。 现在我想要在我的网格中这样的东西:
<Grid Style="{DynamicResource {Binding ElementName=Block1, Path=Text}} />
在默认XAML中这是否可能,还是我必须找到一种解决方法?
在默认XAML中这是否可能,还是我必须找到一种解决方法?
不,恐怕您不能将StaticResource
或DynamicResource
标记扩展名与“动态”值一起使用。 必须在编译时知道资源的键。
绑定到属性并使用转换器将是一种方式:
<Grid Style="{Binding ElementName=Block1, Path=Text, Converter={StaticResource converter}}">
但是我想这是一种解决方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.