İngilizce dilinde oku

Aracılığıyla paylaş


DataGridView.DataSource Özellik

Tanım

Önemli

Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.

verilerinin görüntülendiği DataGridView veri kaynağını alır veya ayarlar.

C#
public object DataSource { get; set; }
C#
public object? DataSource { get; set; }

Özellik Değeri

görüntülenecek verileri DataGridView içeren nesne.

Özel durumlar

Veri kaynağında bir hata oluştu ve olay için DataError işleyici yok veya işleyici özelliğini olarak trueayarlamışThrowException. Özel durum nesnesi genellikle türüne FormatExceptionyayınlanabilir.

Örnekler

Aşağıdaki kod örneği, basit bir veriye bağlı DataGridViewbaşlatmayı gösterir. Ayrıca özelliğin nasıl ayarlanacağı DataSource da gösterilir.

C#
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());
    }
}

Açıklamalar

sınıfı standart DataGridView Windows Forms veri bağlama modelini destekler. Bu, veri kaynağının aşağıdaki arabirimlerden birini uygulayan herhangi bir türde olabileceği anlamına gelir:

Belirli örnekler için, bu bölümün sonundaki Örnek bölümüne ve görev tablosuna bakın.

Genellikle bir bileşene bağlanır ve bileşeni başka bir BindingSource veri kaynağına bağlar BindingSource veya iş nesneleriyle doldurursunuz. Bileşen BindingSource , çok çeşitli veri kaynaklarına bağlanabileceğinden ve birçok veri bağlama sorununu otomatik olarak çözebileceğinden tercih edilen veri kaynağıdır.

Birden çok liste veya tablo içeren bir veri kaynağına bağlanırken, özelliğini bağlanacak listeyi veya tabloyu belirten bir dizeye ayarlamanız DataMember gerekir. Ancak, birden çok liste veya tablo içeren bir BindingSource bileşene bağlanırken, bunun yerine bileşenin BindingSource özelliğini ayarlayabilirsinizDataMember.

Veritabanı verileri yerine bir nesne koleksiyonuna bağlanırken, genellikle veritabanı verileri için uygun olan varsayılan değerini kullanmak yerine özelliği tarafından DefaultCellStyle döndürülen nesnenin DBNull.Valueözelliğini null olarak ayarlarsınızDataSourceNullValue.

Daha fazla bilgi için bkz. Windows Forms DataGridView Denetiminde Verileri Görüntüleme. Aşağıdaki tabloda özelliğiyle ilgili DataSource ortak görevlere doğrudan bağlantılar sağlanmaktadır.

Bkz. İzlenecek Yol: İki Windows Forms DataGridView Denetimi Kullanarak Ana/Ayrıntı Formu Oluşturma ve Nasıl yapılır: Nesneleri DataGridView Denetimlerini Windows Forms Bağlama.

Şunlara uygulanır

Ürün Sürümler
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Ayrıca bkz.