2012-05-25 157 views
1

我创建了一个像控件一样的KPI,并希望根据特定条件应用多个样式,而无需遍历多个控件。基本上我有:Silverlight中的嵌套样式

<Border> 
    <TextBlock> 
</Border> 

边框需要一个样式,就像其中的TextBlock一样。我有典型的绿色/黄色/红色KPI,但每种都有两种模式。越接近截止日期,越极端。

因此,对于LongTermGreen,边框将具有带有透明背景的绿色边框,并且TextBlocks的字体颜色将为绿色。但是对于ShortTermGreen,我想改为将边框变成深绿色,并将TextBlock的字体颜色变为白色。

很显然,我可以用自定义代码做到这一点,处理设定基于特定标准的风格,但是这混乱的(一些关键绩效指标有多个的TextBlocks。

这可能吗?到目前为止,我已经来了空白.. 。

回答

0

WPF有这个确切原因数据触发,但这些不幸的是还没有把它做成的Silverlight。

这可能是标新立异,但你可以在样式属性绑定到KPI状态,然后使用自定义转换器返回适当状态值的正确样式资源。

否则,自定义代码是唯一的其他选择。