Esporta (0) Stampa
Espandi tutto
Il presente articolo è stato tradotto automaticamente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale. Ulteriori informazioni.
Traduzione
Originale

Classe ItemsPanelTemplate

Specifica il pannello in cui ItemsPresenter crea un oggetto per il layout degli elementi di un oggetto ItemsControl.

Spazio dei nomi:  System.Windows.Controls
Assembly:  PresentationFramework (in PresentationFramework.dll)
XMLNS per XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

public class ItemsPanelTemplate : FrameworkTemplate
<ItemsPanelTemplate>
  VisualTree
</ItemsPanelTemplate>

Il tipo ItemsPanelTemplate espone i seguenti membri.

  NomeDescrizione
Metodo pubblicoItemsPanelTemplate()Inizializza un'istanza di ItemsPanelTemplate classe.
Metodo pubblicoItemsPanelTemplate(FrameworkElementFactory)Inizializza un'istanza di ItemsPanelTemplate classe con il modello specificato.
In alto

  NomeDescrizione
Proprietà pubblicaDispatcher ottiene l'oggetto Dispatcher al quale l'oggetto DispatcherObject è associato. (Ereditato da DispatcherObject)
Proprietà pubblicaHasContentOttiene un valore che indica se questo modello ottimizzato il contenuto. (Ereditato da FrameworkTemplate)
Proprietà pubblicaIsSealedOttiene un valore che indica se l'oggetto si trova in uno stato non modificabile in modo da non può essere modificato. (Ereditato da FrameworkTemplate)
Proprietà pubblicaResourcesOttiene o imposta l'esazione risorse che possono essere utilizzate con questo modello. (Ereditato da FrameworkTemplate)
Proprietà pubblicaTemplateOttiene o imposta un riferimento all'oggetto che record o riproduce i nodi XAML per il modello quando il modello viene definito o applicato da un writer. (Ereditato da FrameworkTemplate)
Proprietà pubblicaVisualTreeOttiene o imposta il nodo radice del modello. (Ereditato da FrameworkTemplate)
In alto

  NomeDescrizione
Metodo pubblicoCheckAccessdetermina se il thread chiamante ha accesso a questo DispatcherObject. (Ereditato da DispatcherObject)
Metodo pubblicoEquals(Object) Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object)
Metodo protettoFinalize Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulizia prima che l'oggetto stesso venga reclamato dalla procedura di Garbage Collection. (Ereditato da Object)
Metodo pubblicoFindNameTrova l'elemento associato con il nome specificato definito nel modello. (Ereditato da FrameworkTemplate)
Metodo pubblicoGetHashCode Funge da funzione hash per un particolare tipo. (Ereditato da Object)
Metodo pubblicoGetType Ottiene il Type dell'istanza corrente. (Ereditato da Object)
Metodo pubblicoLoadContentCarica il contenuto del modello come istanza di un oggetto e restituisce l'elemento radice di contenuto. (Ereditato da FrameworkTemplate)
Metodo protettoMemberwiseClone Crea una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object)
Metodo pubblicoRegisterNameRegistra una nuova coppia oggetto di nome/nell'ambito corrente del nome. (Ereditato da FrameworkTemplate)
Metodo pubblicoSealBlocca il modello in modo da non può essere modificato. (Ereditato da FrameworkTemplate)
Metodo pubblicoShouldSerializeResourcesRestituisce un valore che indica se i processi di serializzazione deve serializzare il valore di Resources proprietà nelle istanze di questa classe. (Ereditato da FrameworkTemplate)
Metodo pubblicoShouldSerializeVisualTreeRestituisce un valore che indica se i processi di serializzazione deve serializzare il valore di VisualTree proprietà nelle istanze di questa classe. (Ereditato da FrameworkTemplate)
Metodo pubblicoToString Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object)
Metodo pubblicoUnregisterNameRimuove un nome/oggetto che esegue il mapping dai NameScope XAML. (Ereditato da FrameworkTemplate)
Metodo protettoValidateTemplatedParentcontrolli che il padre basato su modelli è un non Null ItemsPresenter oggetto. (Esegue l'override di FrameworkTemplate.ValidateTemplatedParent(FrameworkElement)).
Metodo pubblicoVerifyAccess Impone che il thread chiamante abbia accesso a questo DispatcherObject. (Ereditato da DispatcherObject)
In alto

  NomeDescrizione
Implementazione esplicita dell'interfacciaMetodo privatoINameScope.FindNameInfrastruttura. Restituisce un oggetto con il nome di identificazione fornito. (Ereditato da FrameworkTemplate)
Implementazione esplicita dell'interfacciaMetodo privatoIQueryAmbient.IsAmbientPropertyAvailableEseguire una query se una proprietà di ambiente specificata è disponibile nell'ambito corrente. (Ereditato da FrameworkTemplate)
In alto

ItemsPanelTemplate specifica il pannello utilizzato per il layout degli elementi. GroupStyle dispone di un oggetto Panel proprietà di tipo ItemsPanelTemplate. ItemsControl i tipi hanno ItemsPanel proprietà di tipo ItemsPanelTemplate.

ciascuno ItemsControl il tipo presenta un valore predefinito ItemsPanelTemplate. per ItemsControl classe, l'impostazione predefinita ItemsPanel il valore viene ItemsPanelTemplate che specifica un oggetto StackPanel. per ListBox, per impostazione predefinita vengono utilizzate VirtualizingStackPanel. per MenuItem, viene utilizzata per impostazione predefinita WrapPanel. per StatusBar, viene utilizzata per impostazione predefinita DockPanel.

Per creare un oggetto orizzontale ListBox, è possibile creare un modello che specifica un oggetto orizzontale StackPanel e impostarlo come ItemsPanel proprietà. Nell'esempio seguente viene illustrato un oggetto ListBox Style oggetto che crea un oggetto orizzontale ListBox.


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


Nell'esempio seguente viene utilizzato un oggetto ControlTemplate per creare un oggetto orizzontale ListBox ciò ha angoli arrotondati. Si noti che in questo esempio, anziché impostare ItemsPanel proprietà come nell'esempio precedente, orizzontali StackPanel è stato specificato all'interno di ControlTemplate. si noti che IsItemsHost la proprietà è impostata su true in StackPanel, che indica che gli elementi generati devono passare nel pannello. Quando si specifica questa modalità, ItemsPanel non può essere sostituito dall'utente del controllo senza utilizzare un oggetto ControlTemplate. Di conseguenza, effettuare questa operazione solo se si è certi che non si desidera che il pannello da sostituire senza l'utilizzo di un modello.


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


In alternativa, è possibile effettuare le operazioni seguenti per ottenere gli stessi risultati. in questo caso, ItemsPresenter crea il pannello del layout degli elementi in base a quanto specificato da 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>


Per un esempio di come utilizzare le proprietà di stili e modelli diversi su ItemsControl, vedere Cenni preliminari sui modelli di dati.

.NET Framework

Supportato in: 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (ruoli di base del server non supportati), Windows Server 2008 R2 (ruoli di base del server supportati con SP1 o versione successiva, Itanium non supportato)

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Qualsiasi membro pubblico static (Shared in Visual Basic) di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft