Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Interfaz IListSource

 

Publicado: octubre de 2016

Proporciona funcionalidad a un objeto para devolver una lista que puede enlazarse a un origen de datos.

Espacio de nombres:   System.ComponentModel
Ensamblado:  System (en System.dll)

[TypeConverterAttribute("System.Windows.Forms.Design.DataSourceConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public interface IListSource

NombreDescripción
System_CAPS_pubpropertyContainsListCollection

Obtiene un valor que indica si la colección es una colección de IList objetos.

NombreDescripción
System_CAPS_pubmethodGetList()

Devuelve un IList que puede enlazarse a un origen de datos de un objeto que no implementa un IList propio.

Esta interfaz suele utilizarse para devolver una lista que puede enlazarse a un origen de datos de un objeto que no implementa IList propio.

Enlace a datos puede producirse en tiempo de ejecución o en un diseñador, pero hay reglas para cada uno. En tiempo de ejecución, puede enlazar a datos en cualquiera de las siguientes acciones:

  • Array

  • Implementador de IList, siempre y cuando tenga fuertemente tipado Item propiedad (es decir, el Type es cualquier cosa menos Object). Puede hacerlo realizando la implementación predeterminada de Item privada. Si desea crear un IList que sigue las reglas de una colección fuertemente tipada, debe derivar de CollectionBase.

  • Implementador de ITypedList.

En un diseñador, se puede inicializar el enlace a Component objetos siguiendo las mismas reglas.

System_CAPS_noteNota

Los implementadores de IListSource puede devolver un IList que contiene una colección de IList objetos.

En el ejemplo de código siguiente se muestra cómo implementar el IListSource interfaz. Un componente denominado EmployeeListSource expone un IList para el enlace de datos mediante la implementación de la GetList (método). Para obtener una lista de código completo, vea Cómo: Implementar la interfaz IListSource.

using System;
using System.Collections.Generic;
using System.Text;
using System.ComponentModel;

namespace IListSourceCS
{
    public class EmployeeListSource : Component, IListSource
    {
        public EmployeeListSource() {}

        public EmployeeListSource(IContainer container)
        {
            container.Add(this);
        }

        #region IListSource Members

        bool IListSource.ContainsListCollection
        {
            get { return false; }
        }

        System.Collections.IList IListSource.GetList()
        {
            BindingList<Employee>   ble = new BindingList<Employee>();

            if (!this.DesignMode)
            {
                ble.Add(new Employee("Aaberg, Jesper", 26000000));
                ble.Add(new Employee("Cajhen, Janko", 19600000));
                ble.Add(new Employee("Furse, Kari", 19000000));
                ble.Add(new Employee("Langhorn, Carl", 16000000));
                ble.Add(new Employee("Todorov, Teodor", 15700000));
                ble.Add(new Employee("Vereb�lyi, �gnes", 15700000));
            }

            return ble;
        }

        #endregion
    }
}

.NET Framework
Disponible desde 1.1
Volver al principio
Mostrar: