我在Canvas中有一行作为WPF窗口上的根元素看起来很好。如果我将它放入ItemsControl的DataTemplate中,则StackPanel会将这些行剪切为ItemsPanelTemplate。我已经检查过Grid等其他面板作为ItemsPanelTemplate不会剪辑内容。我知道Canvas不会剪辑内容。这仅在运行时出现,而不是设计时。问题的根源是什么?
<ItemsControl ItemsSource="{Binding ...}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel ClipToBounds="False"
Orientation="Horizontal" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Canvas Width="100"
Height="100"
ClipToBounds="False">
<Line X1="0"
Y1="0"
X2="-10"
Y2="10"
Stroke="DeepPink"
StrokeThickness="10" />
</Canvas>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>