C# 子元素在FlipView内部重复
我有一个FlipView,它有一个包含NotebookPageCanvas的数据模板。NotebookPageCanvas源于Canvas并包含一个InkManager。我正在动态地将子元素添加到此画布,我发现子元素在FlipView的其他页面上重复 例如,如果我从FlipView中的10个项目开始,当我在索引0处向画布动态添加一个矩形时,该矩形也将添加到索引3处的画布。FlipView中有三个项目,一切正常,但之后,我找不到子控件的行为模式。这是我的FlipView XAMLC# 子元素在FlipView内部重复,c#,windows-8,windows-runtime,windows-store-apps,winrt-xaml,C#,Windows 8,Windows Runtime,Windows Store Apps,Winrt Xaml,我有一个FlipView,它有一个包含NotebookPageCanvas的数据模板。NotebookPageCanvas源于Canvas并包含一个InkManager。我正在动态地将子元素添加到此画布,我发现子元素在FlipView的其他页面上重复 例如,如果我从FlipView中的10个项目开始,当我在索引0处向画布动态添加一个矩形时,该矩形也将添加到索引3处的画布。FlipView中有三个项目,一切正常,但之后,我找不到子控件的行为模式。这是我的FlipView XAML <Flip
<FlipView
x:Name="flipView"
AutomationProperties.AutomationId="ItemsFlipView"
AutomationProperties.Name="Item Details"
TabIndex="1"
Grid.RowSpan="2"
ItemsSource="{Binding Source={StaticResource itemsViewSource}}" SelectionChanged="flipView_SelectionChanged" >
<FlipView.ItemContainerStyle>
<Style TargetType="FlipViewItem">
<Setter Property="Margin" Value="0,137,0,0"/>
</Style>
</FlipView.ItemContainerStyle>
<FlipView.ItemTemplate>
<DataTemplate>
<local:NotebookPageCanvas x:Name="InkCanvas" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<Canvas.Background>
<SolidColorBrush Color="{Binding BackgroundColor}" />
</Canvas.Background>
<TextBlock Foreground="BlueViolet" Canvas.Left="0" Canvas.Top="100" Text="{Binding Title}" />
</local:NotebookPageCanvas>
</DataTemplate>
</FlipView.ItemTemplate>
</FlipView>
知道我做错了什么吗?显然
FlipView
虚拟化是在需要加载更多数据时回收现有项目。在画布与新的DataContext
关联之前,您只需要擦除画布的内容。一种方法可能是使用绑定填充画布的子级,并在添加新内容之前始终擦除现有内容