PaN*_*1Me 1 wpf listview gridview dynamic
我正在尝试ListView动态设置视图:但是我得到一个异常' 视图不能被多个共享ListView',尽管我只使用它一次.无论如何,如果我已经创建了一个实例,然后是DataTrigger触发器,那么Exception也会发生.
这是我的wpf代码:
<ListView ItemsSource="{Binding Collection}" SelectionMode="Extended" AlternationCount="2" >
<ListView.Style>
<Style>
<Setter Property="ListView.View" Value="{StaticResource MyView1}" />
<Style.Triggers>
<DataTrigger Binding="{Binding Path=MyPath1}" Value="True">
<Setter Property="ListView.View" Value="{StaticResource MyView2}" />
</DataTrigger>
<DataTrigger Binding="{Binding Path=MyPath2}" Value="True">
<Setter Property="ListView.View" Value="{StaticResource MyView3}" />
</DataTrigger>
</Style.Triggers>
</Style>
</ListView.Style>
</ListView>
Run Code Online (Sandbox Code Playgroud)
这是来自资源:
<GridView x:Key="MyView1">
<GridViewColumn DisplayMemberBinding="{Binding Path=MyProperty}" >
<GridViewColumnHeader Content="Text" />
</GridViewColumn>
</GridView>
..
Run Code Online (Sandbox Code Playgroud)
您可以将x:Shared ="False"属性添加到GridView资源中,如下所示
<GridView x:Key="MyView1" x:Shared="False">
<GridViewColumn DisplayMemberBinding="{Binding Path=MyProperty}" >
<GridViewColumnHeader Content="Text" />
</GridViewColumn>
</GridView>
..
Run Code Online (Sandbox Code Playgroud)
更新
在这里上传了示例项目
| 归档时间: |
|
| 查看次数: |
1258 次 |
| 最近记录: |