Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original
Información
El tema que ha solicitado se muestra abajo. Sin embargo, este tema no se encuentra en la biblioteca.

ItemContainerGenerator (Clase)

Genera interfaz de usuario (UI) en nombre del host, como ItemsControl.

System.Object
  System.Windows.Controls.ItemContainerGenerator

Espacio de nombres:  System.Windows.Controls
Ensamblado:  PresentationFramework (en PresentationFramework.dll)

public sealed class ItemContainerGenerator : IRecyclingItemContainerGenerator, 
	IItemContainerGenerator, IWeakEventListener

El tipo ItemContainerGenerator expone los siguientes miembros.

  NombreDescripción
Propiedad públicaItemsObtiene la colección de elementos que pertenecen a este ItemContainerGenerator.
Propiedad públicaStatusEl estado de la compilación de ItemContainerGenerator.
Arriba

  NombreDescripción
Método públicoContainerFromIndexDevuelve el elemento que corresponde al elemento en el índice especificado dentro de ItemCollection.
Método públicoContainerFromItemDevuelve UIElement correspondiente al elemento especificado.
Método públicoEquals(Object)Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object).
Método públicoGenerateBatchesDevuelve un objeto que administra la propiedad de Status .
Método públicoGetHashCode Sirve como una función hash para un tipo en particular. (Se hereda de Object).
Método públicoGetType Obtiene el Type de la instancia actual. (Se hereda de Object).
Método públicoIndexFromContainer(DependencyObject)Devuelve el índice de un elemento que corresponde a UIElementespecificado, generado.
Método públicoIndexFromContainer(DependencyObject, Boolean)Devuelve el índice de un elemento que corresponde a UIElementespecificado, generado, opcionalmente en busca de forma recursiva elementos jerárquicos.
Método públicoItemFromContainerdevuelve el elemento que corresponde a UIElementespecificado, generado.
Método públicoToString Retorna una cadena que representa al objeto actual. (Se hereda de Object).
Arriba

  NombreDescripción
Evento públicoItemsChangedEl evento de ItemsChanged es provocado por ItemContainerGenerator para informar a diseños que la colección de elementos ha cambiado.
Evento públicoStatusChangedEl evento de StatusChanged es provocado por ItemContainerGenerator para informar a los controles que su estado ha cambiado.
Arriba

  NombreDescripción
Implementación explícita de interfacesMétodo privadoIItemContainerGenerator.GenerateNext()Devuelve el elemento contenedor utilizado para mostrar el elemento siguiente.
Implementación explícita de interfacesMétodo privadoIItemContainerGenerator.GenerateNext(Boolean)Devuelve el elemento contenedor utilizado para mostrar el elemento siguiente, y si el elemento contenedor se ha generado recién (realizado).
Implementación explícita de interfacesMétodo privadoIItemContainerGenerator.GeneratorPositionFromIndexDevuelve el objeto de GeneratorPosition que asigna al elemento en el índice especificado.
Implementación explícita de interfacesMétodo privadoIItemContainerGenerator.GetItemContainerGeneratorForPanelDevuelve el ItemContainerGenerator adecuado para uso del panel especificado.
Implementación explícita de interfacesMétodo privadoIItemContainerGenerator.IndexFromGeneratorPositionDevuelve el índice que asigna a GeneratorPosition especificado.
Implementación explícita de interfacesMétodo privadoIItemContainerGenerator.PrepareItemContainerPrepara el elemento especificado como contenedor del elemento correspondiente.
Implementación explícita de interfacesMétodo privadoIItemContainerGenerator.RemoveEste miembro es compatible con la infraestructura de Windows Presentation Foundation (WPF) y no está diseñado para usarse directamente desde el código.
Implementación explícita de interfacesMétodo privadoIItemContainerGenerator.RemoveAllquita elementos (observados) todo generados.
Implementación explícita de interfacesMétodo privadoIItemContainerGenerator.StartAt(GeneratorPosition, GeneratorDirection)Prepara el generador para generar elementos, empezando en el GeneratorPosition especificado y, en el GeneratorDirection especificado.
Implementación explícita de interfacesMétodo privadoIItemContainerGenerator.StartAt(GeneratorPosition, GeneratorDirection, Boolean)Prepara el generador para generar elementos, empezando en el GeneratorPosition especificado y, en el GeneratorDirection especificado, y supervisar si iniciar en un elemento (observar) generado.
Implementación explícita de interfacesMétodo privadoIRecyclingItemContainerGenerator.RecycleEste miembro es compatible con la infraestructura de Windows Presentation Foundation (WPF) y no está diseñado para usarse directamente desde el código.
Implementación explícita de interfacesMétodo privadoIWeakEventListener.ReceiveWeakEventEste miembro es compatible con la infraestructura de Windows Presentation Foundation (WPF) y no está diseñado para usarse directamente desde el código.
Arriba

ItemContainerGenerator implementa IItemContainerGenerator, que es la interfaz que define un tipo que:

  • Mantiene una asociación entre la vista de datos de un control de varios elementos, como ContainerFromElement y los elementos correspondientes de UIElement .

  • Genera elementos de UIElement en nombre de un control de varios elementos.

cada tipo de ItemsControl tiene un tipo de contenedor correspondiente. Los elementos contenedor son objetos que contienen elementos de datos en la colección de elementos. Por ejemplo, para ListBox, contenedores generados son controles de ListBoxItem ; para ComboBox, son controles de ComboBoxItem .

ItemsControl genera sus elementos a través de la interfaz de IItemContainerGenerator . La propiedad de ItemContainerGenerator de ItemsControl es de ItemContainerGeneratorescrito, que implementa la interfaz de IItemContainerGenerator . Por consiguiente, puede tener acceso a ItemContainerGenerator asociado a ItemsControl mediante la propiedad de ItemContainerGenerator . Por ejemplo, si tiene TreeViewenlazado a datos, y desea obtener TreeViewItem por su índice o el elemento de datos asociado, puede utilizar ItemContainerGenerator.ContainerFromIndex o el método de ItemContainerGenerator.ContainerFromItem . Alternativamente, puede utilizar ItemContainerGenerator.IndexFromContainer o el método de ItemContainerGenerator.ItemFromContainer para obtener el índice o el elemento de datos asociado con un elemento contenedor generado especificado.

Aparte de los usos, la interfaz de IItemContainerGenerator se utiliza en escenarios avanzados. Normalmente, las aplicaciones avanzadas que tienen su propia implementación de los miembros de virtualización de una llamada del panel de la interfaz.

Si necesita obtener un ListBoxItem específico en un índice determinado en un ListBox, puede utilizar un ItemContainerGenerator.

En el ejemplo siguiente se muestra un ListBox y sus elementos.


<ListBox Margin="10,0,0,5" Name="lb" VerticalAlignment="Top" Grid.Column="0" Grid.Row="2">
    <ListBoxItem>Item 0</ListBoxItem>
    <ListBoxItem>Item 1</ListBoxItem>
    <ListBoxItem>Item 2</ListBoxItem>
    <ListBoxItem>Item 3</ListBoxItem>
</ListBox>


En el ejemplo siguiente se muestra cómo recuperar el elemento especificando el índice del elemento en la propiedad ContainerFromIndex de ItemContainerGenerator.


private void GetIndex0(object sender, RoutedEventArgs e)
{
  ListBoxItem lbi = (ListBoxItem)
      (lb.ItemContainerGenerator.ContainerFromIndex(0));
  Item.Content = "The contents of the item at index 0 are: " +
      (lbi.Content.ToString()) + ".";
}


Después de recuperar el elemento de cuadro de lista, puede mostrar el contenido del elemento, como se muestra en el ejemplo siguiente.


Item.Content = "The contents of the item at index 0 are: " +
    (lbi.Content.ToString()) + ".";


.NET Framework

Compatible con: 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros públicos static (Shared en Visual Basic) de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Adiciones de comunidad

Mostrar:
© 2015 Microsoft