我在xaml文件中有一个TabControl
和一个TabItem
,其中包含ListView
。我想使用相同的ListView
架构动态添加新选项卡。
我试着这样做:
ListView newList = new ListView();
newList = my_xaml_listview;
然后我尝试将其插入新的TabItem
。问题是此代码返回了对原始ListView
的引用。
如何使用相同的ListView
架构(相同的列,颜色等)创建新副本并将其添加到新的TabItem
?
答案 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"];