Compartir vía


Panel.IsItemsHost Propiedad

Definición

Obtiene o establece un valor que indica que se trata Panel de un contenedor para elementos de la interfaz de usuario (UI) generados por .ItemsControl

public:
 property bool IsItemsHost { bool get(); void set(bool value); };
[System.ComponentModel.Bindable(false)]
public bool IsItemsHost { get; set; }
[<System.ComponentModel.Bindable(false)>]
member this.IsItemsHost : bool with get, set
Public Property IsItemsHost As Boolean

Valor de propiedad

Boolean

Es true si esta instancia de Panel es un host de elementos; de lo contrario, es false. El valor predeterminado es false.

Atributos

Ejemplos

En el ejemplo siguiente se usa un ControlTemplate para crear un objeto horizontal ListBox. La horizontal StackPanel se especifica dentro de ControlTemplate. La IsItemsHost propiedad se establece true en en StackPanel, que indica que los elementos generados deben colocarse en el panel. Cuando se especifica de esta manera, ItemsPanel no se puede reemplazar por el usuario del control sin usar .ControlTemplate Por lo tanto, haga esto solo si sabe que no desea que el panel se reemplace sin el uso de una plantilla.

<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>

Como alternativa, puede establecer la ItemsControl.ItemsPanel propiedad . En el ejemplo siguiente se establece en ItemsPanel Style un de .ListBox

<Grid.Resources>
  <Style TargetType="Separator">
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type Separator}">
          <Border Width="2" Height="12" Margin="4" Background="Gray"/>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>

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

Comentarios

No se pueden enlazar datos a esta propiedad.

Información sobre propiedades de dependencia

Campo identificador IsItemsHostProperty
Propiedades de metadatos establecidas en true IsNotDataBindable

Se aplica a

Consulte también