如何将索引器绑定到WPF中的GridViewColumn?

时间:2011-03-02 19:04:35

标签: c# .net wpf xaml data-binding

在我的ViewModel对象中,我有一个像这样的索引器:

public bool this[enum effectType]
{
    get { return CheckList.First ( e => e.EffectType == effectType ).IsChecked; }
}

但不确定如何在Xaml中绑定它。我试过这些:

<GridViewColumn
    <GridViewColumn.CellTemplate>
        <DataTemplate>
            <CheckBox
                IsChecked="{Binding Item[Blur], Mode=TwoWay}"/>
        </DataTemplate>
    </GridViewColumn.CellTemplate>
</GridViewColumn>

IsChecked="{Binding this[Blur], Mode=TwoWay}"/>

IsChecked="{Binding AllEffects[Blur], Mode=TwoWay}"/>

AllEffects已经ObservableCollection绑定到ListBox本身,并且已经填充了列,除了我尝试绑定到此索引器的已检查列。

1 个答案:

答案 0 :(得分:3)

试试这个:

<CheckBox IsChecked="{Binding .[Blur], Mode=TwoWay}"/>

请注意,您的索引器属性必须按照TwoWay绑定的方式提供一个setter才能正常工作。