【问题标题】:How can I change the style of an element based on the bound data in WP8 XAML?如何根据 WP8 XAML 中的绑定数据更改元素的样式?
【发布时间】:2014-05-02 15:11:44
【问题描述】:

如何根据 Windows Phone 8 上的数据绑定数据更改 LongListSelector 中项目的样式(例如,Foreground 颜色)?

我是 XAML 菜鸟,我在 Google 上进行了一些搜索,其中大部分都谈到了使用触发器,但似乎它们在 WP8 中不可用。

例如,如果我将List<FooItem> 绑定到我的LongListSelector 其中FooItem

class FooItem
{
    public string LineOne { get; set; }

    public FooItemStatus Status { get; set; }
}

public enum FooItemStatus
{
    NotSet,
    High,
    Medium,
    Low
}

...对于Status == High 的项目,我如何将Foreground 颜色更改为红色?

【问题讨论】:

  • 不,您只需要 mvvmlight 库,您可能会发现 this 值得快速阅读以使生活更轻松。
  • @ChrisW。感谢您的链接,但它并没有真正解决我的问题,至少不是外行可以理解的方式。你有更具体的例子吗?
  • 对于数据触发端

标签: xaml windows-phone-8


【解决方案1】:

使用转换器绑定 Foreground 属性:

Foreground="{Binding Status, Converter={StaticResource FooItemStatusConverter}}"

创建一个将状态映射到适当Brushes 的转换器类。将此类用作例如带有FooItemStatusConverter 键的页面/应用资源。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-19
    • 2020-10-09
    • 1970-01-01
    • 2021-03-19
    • 1970-01-01
    • 2016-11-09
    • 1970-01-01
    • 2021-01-02
    相关资源
    最近更新 更多