创建选项卡项的副本

时间:2013-02-21 10:35:41

标签: c# wpf xaml listview tabs

我在xaml文件中有一个TabControl和一个TabItem,其中包含ListView。我想使用相同的ListView架构动态添加新选项卡。

我试着这样做:

ListView newList = new ListView();
newList = my_xaml_listview;

然后我尝试将其插入新的TabItem。问题是此代码返回了对原始ListView的引用。

如何使用相同的ListView架构(相同的列,颜色等)创建新副本并将其添加到新的TabItem

2 个答案:

答案 0 :(得分:0)

看看这个Iclonable

试试这个Iclonable sample

答案 1 :(得分:0)

正如我在评论中提到的,当涉及到颜色/边距/尺寸时,您可以使用Style作为我相信您已拥有的资源。

对于列,您可以执行完全相同的操作,但使用GridView作为资源,并在您创建的每个ListView内共享。

<Window.Resources>
    <GridView x:Key="MyViewGrid">
        <GridViewColumn Header="Column 1" Width="100" />
        <GridViewColumn Header="Column 2" Width="100" />
    </GridView>
</Window.Resources>
<ListView View="{DynamicResource MyViewGrid}" />

..并在代码中:

myNewListBox.View = (GridView)Resources["MyViewGrid"];