1

フリップビューを使用して、プログラムからさまざまなアプローチを作成しています。ただし、異なるビューごとに同じキャンバスが必要です。

それを行う方法はありますか?

私が持っているコードは次のようなものです:

<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 に対して同じキャンバスを使用したいと考えています。

4

1 に答える 1

0

残念ながら、Canvas論理的な親は1つしか持てません。同じCanvasものを、複数に追加することはできませんFlipViewItems

なぜそれらはすべて同じCanvasである必要があるのですか、それらが共通のレイアウトコントロールまたは何かを持っているだけの場合は、を作成できますControlTemplate

あなたがあなたの最終目標を説明するならば、誰かが助けることができるかもしれません。

VisualBrushおそらく、それを作成し、それをすべてにCanvas適用するという1つのアイデアは、更新UI全体を描画するときに、すべて同じように表示されるはずです。VisualBrushFlipViewItemsVisualBrush 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>

ただし、Canvasのどこに描画しているかわからないため、このアプローチはあなたの場合には機能しない可能性があります

于 2013-02-18T02:35:45.140 に答える