启用一个网格视图,并在具有相同ItemsSource

时间:2016-08-11 13:01:35

标签: xaml mvvm

我有两个并排坐在一起的视图。它们由相同的ItemsSource提供。

除标题外,两个视图几乎相同。我想要的是按条件显示其中一个。条件是ItemsSource具有属性type。当type等于left时,我们会在左侧视图中显示数据。当type等于right时,我们会在右侧视图中显示数据。

现在他们都显示数据,因为他们有相同的ItemsSource。那么如何触发View?

    <StackPanel Orientation="Vertical" Grid.Column="0" Margin="0,5,5,0">
                    <TextBlock Text="Left" HorizontalAlignment="Center"></TextBlock>
                    <telerik:RadGridView

                             ItemsSource="{Binding Result}">
                        <telerik:RadGridView.Columns>
                            <telerik:GridViewDataColumn Width="70" Header="User" DataMemberBinding="{Binding User,Mode=TwoWay}" HeaderTextAlignment="Center" TextAlignment="Center"></telerik:GridViewDataColumn>
                            <telerik:GridViewDataColumn Width="400" Header="Note" DataMemberBinding="{Binding Note,Mode=TwoWay}" HeaderTextAlignment="Center" TextAlignment="Center"></telerik:GridViewDataColumn>
                        </telerik:RadGridView.Columns>

                    </telerik:RadGridView>

                </StackPanel>
                <StackPanel Orientation="Vertical"  Grid.Column="1" Margin="5,5,0,0">
                    <TextBlock Text="Right" HorizontalAlignment="Center"></TextBlock>
                    <telerik:RadGridView

                             ItemsSource="{Binding Result}">
                        <telerik:RadGridView.Columns>
                            <telerik:GridViewDataColumn Width="70" Header="User" DataMemberBinding="{Binding User}" HeaderTextAlignment="Center" TextAlignment="Center"></telerik:GridViewDataColumn>
                            <telerik:GridViewDataColumn Width="400" Header="Note" DataMemberBinding="{Binding Note}" HeaderTextAlignment="Center" TextAlignment="Center"></telerik:GridViewDataColumn>
                        </telerik:RadGridView.Columns>

                    </telerik:RadGridView>

                </StackPanel>

注意:我使用MVVM模式。

1 个答案:

答案 0 :(得分:0)

如何将Result.type绑定到网格视图'IsEnabled属性?

使用转换器将类型与转换器参数进行比较,如果匹配,则返回true。