Exportar (0) Imprimir
Expandir todo
Expandir Minimizar

DataGridView.DataSource (Propiedad)

Obtiene o establece el origen de datos cuyos datos se están mostrando en el control DataGridView.

Espacio de nombres: System.Windows.Forms
Ensamblado: System.Windows.Forms (en system.windows.forms.dll)

public Object DataSource { get; set; }
/** @property */
public Object get_DataSource ()

/** @property */
public void set_DataSource (Object value)

public function get DataSource () : Object

public function set DataSource (value : Object)

No aplicable.

Valor de propiedad

El objeto que contiene los datos que se van a mostrar con el control DataGridView.

Tipo de excepciónCondición

Exception

Se produjo un error en el origen de datos y no hay ningún controlador para el evento DataError o el controlador tiene la propiedad DataGridViewDataErrorEventArgs.ThrowException establecida en true. El objeto de excepción normalmente se puede convertir en un tipo FormatException.

La clase DataGridView admite el modelo de enlace de datos estándar de formularios Windows Forms. Esto significa que el origen de datos puede ser de cualquier tipo que implemente una de las interfaces siguientes:

Normalmente, se enlazará a un componente BindingSource y enlazará el componente BindingSource a otro origen de datos o lo rellenará con objetos comerciales. El componente BindingSource es el origen de datos preferido, ya que puede enlazarse a una gran variedad de orígenes de datos y puede resolver muchos problemas de enlace a datos automáticamente.

Cuando se enlaza a un origen de datos que contiene varias listas o tablas, debe establecer la propiedad DataMember en una cadena que especifique la lista o la tabla con la que se va a enlazar. Sin embargo, cuando se enlaza a un componente BindingSource que contiene varias listas o tablas, puede establecer la propiedad DataMember del componente BindingSource en su lugar.

Al enlazar a una colección de objetos en lugar de enlazar a datos de una base de datos, normalmente se establece la propiedad DataSourceNullValue del objeto devuelto por la propiedad DefaultCellStyle en referencia null (Nothing en Visual Basic), en lugar de utilizando el valor predeterminado de System.DbNull.Value, que es adecuado para datos de una base de datos.

Para obtener más información, vea Información general del control DataGridView (Formularios Windows Forms).

El ejemplo de código siguiente muestra cómo inicializar un objeto DataGridView simple enlazado a datos. También se muestra cómo utilizar la propiedad DataSource.

using System;
using System.Data;
using System.Data.SqlClient;
using System.Windows.Forms;
using System.Drawing;

public class Form1 : System.Windows.Forms.Form
{
    private DataGridView dataGridView1 = new DataGridView();
    private BindingSource bindingSource1 = new BindingSource();

    public Form1()
    {
        dataGridView1.Dock = DockStyle.Fill;
        this.Controls.Add(dataGridView1);
        InitializeDataGridView();
    }

    private void InitializeDataGridView()
    {
        try
        {
            // Set up the DataGridView.
            dataGridView1.Dock = DockStyle.Fill;

            // Automatically generate the DataGridView columns.
            dataGridView1.AutoGenerateColumns = true;

            // Set up the data source.
            bindingSource1.DataSource = GetData("Select * From Products");
            dataGridView1.DataSource = bindingSource1;

            // Automatically resize the visible rows.
            dataGridView1.AutoSizeRowsMode =
                DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders;

            // Set the DataGridView control's border.
            dataGridView1.BorderStyle = BorderStyle.Fixed3D;

            // Put the cells in edit mode when user enters them.
            dataGridView1.EditMode = DataGridViewEditMode.EditOnEnter;
        }
        catch (SqlException)
        {
            MessageBox.Show("To run this sample replace connection.ConnectionString" +
                " with a valid connection string to a Northwind" +
                " database accessible to your system.", "ERROR",
                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            System.Threading.Thread.CurrentThread.Abort();
        }
    }

    private static DataTable GetData(string sqlCommand)
    {
        string connectionString = "Integrated Security=SSPI;" +
            "Persist Security Info=False;" +
            "Initial Catalog=Northwind;Data Source=localhost";

        SqlConnection northwindConnection = new SqlConnection(connectionString);

        SqlCommand command = new SqlCommand(sqlCommand, northwindConnection);
        SqlDataAdapter adapter = new SqlDataAdapter();
        adapter.SelectCommand = command;

        DataTable table = new DataTable();
        table.Locale = System.Globalization.CultureInfo.InvariantCulture;
        adapter.Fill(table);

        return table;
    }

    [STAThreadAttribute()]
    public static void Main()
    {
        Application.Run(new Form1());
    }
}

Windows 98, Windows 2000 Service Pack 4, Windows Millennium, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter

Microsoft .NET Framework 3.0 es compatible con Windows Vista, Microsoft Windows XP SP2 y Windows Server 2003 SP1.

.NET Framework

Compatible con: 3.0, 2.0
Mostrar:
© 2014 Microsoft