itemscontrol에서 파생 된 자체 컨트롤이 있습니다. ItemsControl 내부에있는 캔버스를 ItemsPanel로 사용하고 있습니다. 왜 f.e. 항목의 창 크기를 변경하면 itemscontrol 외부에도있을 수 있습니까?wpf items 컨트롤 외부 컨트롤 항목
템플릿 : 부모의 경계 밖에서 이동하는 아이들을 일으킬 수있는 부모의 크기를 조정하여 정렬 및 여백 설정에 따라
<Style TargetType="{x:Type local:Widget}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:Widget}">
<Grid Background="{TemplateBinding Background}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Border Grid.Row="0" BorderThickness="2" BorderBrush="Black" Background="WhiteSmoke"
x:Name="Part_Header">
<ContentPresenter ContentSource="Header"/>
</Border>
<Border Grid.Row="1" BorderThickness="2" BorderBrush="Black" Background="WhiteSmoke">
<Grid>
<ContentPresenter />
<ResizeGrip x:Name="Part_Resize"
HorizontalAlignment="Right"
VerticalAlignment="Bottom"
Cursor="SizeNWSE" />
</Grid>
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Canvas는 항상 요소의 절대 위치 지정을 사용한다고 생각합니다. ItemsPanelTemplate을 DockPanel, StackPanel 또는 Grid로 전환하면 이러한 현상이 발생합니까? – Josh
빠른 해결책은 ItemsPresenter를 ScrollViewer로 둘러싸는 것이 었습니다. 현재는 아무것도 스크롤하지 않지만 항목이이 영역에 묶여 있으며 창 크기가 작 으면 나머지 항목은 숨겨집니다 (예상했던 것처럼). – SACO