【问题标题】:How to use multibiding with a Style Setter如何在样式设置器中使用 multibiding
【发布时间】:2013-04-12 17:48:17
【问题描述】:

交替行样式定义为:

<Style TargetType="telerik:GridViewRow">
     <Setter Property="Background" Value="{Binding Color,Converter={StaticResource dataToColorConverter}}">
</Style>

但我想根据多个值更新行样式。我想实现这样的目标。

<Style>
    <Setter Property="Background" >
               <MultiBinding Converter={StaticResource  dataToColorConverter}>
               <Binding Path="Color"/>
               <Binding ElementName="myListBox" Path="SelectedItem"/>
               </MultiBinding>
    </Setter>
</Style>

但收到错误“'Setter' 类型不支持直接内容。”

【问题讨论】:

    标签: wpf c#-4.0 mvvm multibinding


    【解决方案1】:

    由于Setter 元素不支持直接内容,您必须指定您正在设置Value 属性(在您的XAML 中包括“”):

    <Setter Property="Background" >
        <Setter.Value>
            <MultiBinding Converter="{StaticResource dataToColorConverter}" >
                <Binding Path="Color" />
                <Binding ElementName="myListBox" Path="SelectedItem" />
            </MultiBinding>
        </Setter.Value>
    </Setter>
    

    【讨论】:

      猜你喜欢
      • 2019-07-22
      • 2021-07-04
      • 2011-07-19
      • 2019-05-31
      • 2014-06-20
      • 2018-04-21
      • 1970-01-01
      • 2016-07-30
      • 2014-01-02
      相关资源
      最近更新 更多