이 문서는 수동으로 번역한 것입니다. 원본 텍스트를 보려면 포인터를 문서의 문장 위로 올리십시오.
번역
원본
정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

ItemsControl.ItemsPanel 속성

항목의 레이아웃을 제어하는 패널을 정의하는 템플릿을 가져오거나 설정합니다.

네임스페이스:  System.Windows.Controls
어셈블리:  PresentationFramework(PresentationFramework.dll)
XAML의 XMLNS: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

[BindableAttribute(false)]
public ItemsPanelTemplate ItemsPanel { get; set; }
<object>
  <object.ItemsPanel>
    <ItemsPanelTemplate .../>
  </object.ItemsPanel>
</object>

속성 값

형식: System.Windows.Controls.ItemsPanelTemplate
항목 레이아웃에 사용할 패널을 정의하는 ItemsPanelTemplate입니다. ItemsControl 의 기본값은 StackPanel을 지정하는 ItemsPanelTemplate입니다.

식별자 필드

ItemsPanelProperty

true 로 설정된 메타데이터 속성

없음

ListBox 의 경우 기본 ItemsPanelTemplateVirtualizingStackPanel을 지정합니다. MenuItem 의 경우 WrapPanel이 기본값으로 사용됩니다. StatusBar 의 경우 DockPanel이 기본값으로 사용됩니다.

ItemsControl 의 항목 레이아웃에 영향을 주려면 이 속성을 사용하여 ItemsPanelTemplate을 지정합니다.

ItemsControl 은 매우 자유롭게 시각적으로 사용자 지정할 수 있는 기능과 다양한 스타일 및 템플릿 속성을 제공합니다. ItemContainerStyle 속성이나 ItemContainerStyleSelector 속성을 사용하여 스타일을 설정하면 데이터 항목을 포함하는 요소의 모양에 영향을 줄 수 있습니다. 예를 들어 ListBox의 경우 생성된 컨테이너는 ListBoxItem 컨트롤이고, ComboBox의 경우에는 ComboBoxItem 컨트롤입니다. 컨트롤에 그룹화를 사용하는 경우 GroupStyle 또는 GroupStyleSelector 속성을 사용할 수 있습니다. 데이터 개체의 시각화를 지정하려면 ItemTemplate 또는 ItemTemplateSelector 속성을 설정합니다. 자세한 내용은 데이터 템플릿 개요을 참조하십시오.

가로 방향 ListBox를 만들려면 가로 방향 StackPanel을 지정하는 템플릿을 만들어 ItemsPanel 속성으로 설정합니다. 다음 예제에서는 가로 방향 ListBox를 만드는 ListBox Style을 보여 줍니다.


<Style TargetType="ListBox">
  <Setter Property="ItemsPanel">
    <Setter.Value>
      <ItemsPanelTemplate>
        <StackPanel Orientation="Horizontal"
                    VerticalAlignment="Center"
                    HorizontalAlignment="Center"/>
      </ItemsPanelTemplate>
    </Setter.Value>
  </Setter>
</Style>


다음 예제에서는 ControlTemplate을 사용하여 모퉁이가 둥근 가로 방향 ListBox를 만듭니다. 이 예제에서는 이전 예제와 같이 ItemsPanel 속성을 설정하는 대신 ControlTemplate 내에서 가로 방향 StackPanel을 지정합니다. StackPanel IsItemsHost 속성을 true로 설정하여 생성된 항목이 패널에 포함되도록 지정합니다. 이러한 방법으로 지정하는 경우 컨트롤 사용자가 ControlTemplate을 사용하지 않으면 ItemsPanel을 바꿀 수 없습니다. 따라서 템플릿을 사용하지 않고 패널을 바꿀 필요가 없는 경우에만 이 방법을 사용해야 합니다.


<Style TargetType="ListBox">
  <Setter Property="Template">
    <Setter.Value>
      <ControlTemplate TargetType="ListBox">
        <Border CornerRadius="5" Background="{TemplateBinding ListBox.Background}">
          <ScrollViewer HorizontalScrollBarVisibility="Auto">
            <StackPanel Orientation="Horizontal"
                       VerticalAlignment="Center"
                       HorizontalAlignment="Center"
                       IsItemsHost="True"/>
          </ScrollViewer>
        </Border>
      </ControlTemplate>
    </Setter.Value>
  </Setter>
</Style>


다음을 수행하여 같은 결과를 낼 수도 있습니다. 이 경우에는 ItemsPresenter에서 ItemsPanelTemplate에 지정된 내용에 따라 항목 레이아웃을 위한 패널을 만듭니다.


<Style TargetType="{x:Type ListBox}">
  <Setter Property="ItemsPanel">
    <Setter.Value>
      <ItemsPanelTemplate>
        <StackPanel Orientation="Horizontal"
                     VerticalAlignment="Center"
                     HorizontalAlignment="Center"/>
      </ItemsPanelTemplate>
    </Setter.Value>
  </Setter>
  <Setter Property="Template">
    <Setter.Value>
      <ControlTemplate TargetType="{x:Type ListBox}">
        <Border CornerRadius="5"
                Background="{TemplateBinding ListBox.Background}">
          <ScrollViewer HorizontalScrollBarVisibility="Auto">
            <ItemsPresenter/>
          </ScrollViewer>
        </Border>
      </ControlTemplate>
    </Setter.Value>
  </Setter>
</Style>


.NET Framework

4, 3.5, 3.0에서 지원

.NET Framework Client Profile

4, 3.5 SP1에서 지원

Windows 7, Windows Vista SP1 이상, Windows XP SP3, Windows Server 2008(Server Core는 지원되지 않음), Windows Server 2008 R2(Server Core는 SP1 이상에서 지원됨), Windows Server 2003 SP2

.NET Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

커뮤니티 추가 항목

표시:
© 2015 Microsoft