Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 创建选项卡项的副本_C#_Wpf_Xaml_Listview_Tabs - Fatal编程技术网

C# 创建选项卡项的副本

C# 创建选项卡项的副本,c#,wpf,xaml,listview,tabs,C#,Wpf,Xaml,Listview,Tabs,我在xaml文件中有一个TabControl和一个TabItem,其中包含一个ListView。我想使用相同的ListViewschema动态添加新选项卡 我试着这样做: ListView newList = new ListView(); newList = my_xaml_listview; 然后我尝试将其插入新的选项卡item。问题是,这段代码返回了对原始ListView的引用 如何使用相同的列表视图模式(相同的列、颜色等)创建新副本,并将其添加到新的选项卡项?看看这个 试一下这个就像我

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

我试着这样做:

ListView newList = new ListView();
newList = my_xaml_listview;
然后我尝试将其插入新的
选项卡item
。问题是,这段代码返回了对原始
ListView
的引用

如何使用相同的
列表视图
模式(相同的列、颜色等)创建新副本,并将其添加到新的
选项卡项

看看这个


试一下这个

就像我在评论中提到的,当涉及到颜色/边距/大小时,你可以使用
样式
作为一种资源,我相信你已经拥有了

对于列,您可以做完全相同的事情,但是使用
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}" />

当涉及到栏目/颜色/等等时,这似乎是一个完美的风格候选者。然后,您可以创建一个新的
列表视图
,在代码中指定您的样式,并指定
项目资源
,以使列匹配。如果它们指向同一个集合视图,您可以使用现有的
ListView
ItemSource
。谢谢,我尝试为ListView创建一个样式,我添加了颜色、边距等,但我无法添加列名、宽度等。有可能吗?是的,我将在回答中发布代码。
myNewListBox.View = (GridView)Resources["MyViewGrid"];