我有一个LibraryStack的定义如下:
<s:LibraryStack Name="TaggingContainer" Margin="20" Grid.Row="1" Grid.ColumnSpan="2" AllowDrop="True" Height="300" Width="300" s:SurfaceDragDrop.DragLeave="TaggingContainer_DragLeave" s:SurfaceDragDrop.DragEnter="TaggingContainer_DragEnter" s:SurfaceDragDrop.PreviewDrop="LibraryStack_PreviewDrop">
<s:LibraryStack.ItemTemplate>
<DataTemplate>
<Label Content="{Binding Name}" Tag="{Binding}" FontSize="20" Margin="10,10,10,10" HorizontalAlignment="Center" VerticalAlignment="Center" Foreground="White" Background="#c49b14" BorderBrush="White" BorderThickness="2" s:Contacts.PreviewContactDown="Label_PreviewContactDown"></Label>
</DataTemplate>
</s:LibraryStack.ItemTemplate>
</s:LibraryStack>
现在在代码后台,我想要遍历包含在LibraryStack中的所有标签(即数据模板中定义的标签)。
但是如果我使用:
foreach (FrameworkElement element in TaggingContainer.Items) {
}
我遍历的是TaggingContainer中的数据对象,而不是Datatemplates。我该如何更改?