我正在使用flipviews从我的程序中制作不同的方法。但是我需要为每个不同的视图使用相同的画布。
有办法吗?
我的代码是这样的:
<FlipView x:Name="_flipVw1">
<FlipViewItem x:Name="ViewModelos">
<Canvas x:Name="canvas"/>
</FlipViewItem>
<FlipViewItem x:Name="ViewModelos">
<Canvas x:Name="canvas1"/>
</FlipViewItem>
<FlipViewItem x:Name="ViewModelos">
<Canvas x:Name="canvas2"/>
</FlipViewItem>
</FlipView>
<FlipView x:Name="_flipVw1">
<FlipViewItem x:Name="ViewModelos">
<Canvas x:Name="canvas"/>
</FlipViewItem>
<FlipViewItem x:Name="ViewModelos">
<Canvas x:Name="canvas1"/>
</FlipViewItem>
<FlipViewItem x:Name="ViewModelos">
<Canvas x:Name="canvas2"/>
</FlipViewItem>
</FlipView>
而不是这个,我希望所有FlipViewItem都有相同的画布。
答案 0 :(得分:0)
不幸的是,您的Canvas
只能拥有一个逻辑父级,您将无法将同一个Canvas
添加到多个FlipViewItems
。
为什么它们都需要相同Canvas
,如果它们只是有共同的布局控件或者你可以制作ControlTemplate
。
如果你解释了你的最终目标,那么有人可能会提供帮助。
一个想法可能是制作一个VisualBrush
Canvas
,并将VisualBrush
应用于所有FlipViewItems
,当你画出VisualBrush
时} Canvas
更新用户界面,他们都应该显示相同的内容。
<Window.Resources>
<VisualBrush x:Key="MyCanvasVisual">
<VisualBrush.Visual>
<Canvas />
</VisualBrush.Visual>
</VisualBrush>
</Window.Resources>
<FlipViewItem>
<FlipViewItem Content="{StaticResource MyCanvasVisual}" />
<FlipViewItem Content="{StaticResource MyCanvasVisual}" />
<FlipViewItem Content="{StaticResource MyCanvasVisual}" />
</FlipViewItem>
但是我不知道你在画布上画画的地方,所以这个approch可能不适用于你的情况