我正在构建一个具有以下 View 模型属性的 Windows Phone 8 应用程序:
public bool IsReply {get; set;}
在我的 xaml 代码中,我想区分两种情况:
IsReply=True
<Grid Margin="0,0,0,0"> ... </Grid>
IsReply=False
<Grid Margin="40,0,0,0"> ... </Grid>
基本上,我想根据 IsReply 的值来设置 Grid 元素的样式。我知道在 WPF Style.Triggers 中存在,但显然不在 WP 中。 我现在的解决方案是复制整个网格代码并将每个代码的可见性设置为数据转换器。但是,我觉得这应该更简单。
最佳答案
最简单的方法是使用带触发器的样式:
<Grid>
<Grid.Style>
<Style TargetType="Grid">
<Setter Property="Margin" Value="40 0 0 0"/>
<Style.Triggers>
<DataTrigger Binding="{Binding IsReply}" Value="True">
<Setter Property="Margin" Value="0 0 0 0"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Style>
</Grid>
关于c# - XAML 中元素的条件样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20207329/