C#: Kann nicht Auffüllen DataGridView-Eigenschaft programmgesteuert

Eher als designer verwenden, ich versuche, füllen Sie ein DataGridView habe ich auf meine Winform-programmgesteuert. Wenn ich einen Blick in die Tabelle im debugger aus, es hat die richtigen Spalten und Anzahl der Zeilen. Das problem ist, erscheint das Gitter als eine leere graue box auf meiner form. Wenn ich binden Sie das raster in der Datenbank über VS 2008 Designer es geklappt hat. Wie kann ich das problem zurückzuverfolgen?

UPDATE

Ich ziemlich viel habe das von dieser MSDN-Artikel

UPDATE

Muss ich nichts tun, in der designer andere als drop-raster auf der Winform?

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

namespace CC
{
    public partial class Form1 : Form
    {

        private BindingSource bindingSource1 = new BindingSource();
        private SQLiteDataAdapter dataAdapter = new SQLiteDataAdapter();

        public Form1()
        {
            InitializeComponent();
            dataGridView1 = new DataGridView();

            this.Load += new System.EventHandler(Form1_Load);
            this.Text = "Cars";
        }

        private void Form1_Load(object sender, EventArgs e)
        {

            dataGridView1.DataSource = bindingSource1;
            GetData("select * from Cars");


        }

        private void GetData(string selectCommand)
        {
            string dbPath = "c:\\temp\\cars.db";

            try
            {

                var connectionString = "Data Source=" + dbPath + ";Version=3";

                dataAdapter = new SQLiteDataAdapter(selectCommand, connectionString);

                SQLiteCommandBuilder commandBuilder = new SQLiteCommandBuilder(dataAdapter);


                DataTable table = new DataTable();
                table.Locale = System.Globalization.CultureInfo.InvariantCulture;
                dataAdapter.Fill(table);
                bindingSource1.DataSource = table;

                //Resize the DataGridView columns to fit the newly loaded content.
                dataGridView1.AutoResizeColumns(
                    DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
            }
            catch (SqlException)
            {
                MessageBox.Show("To run this example, replace the value of the " +
                    "connectionString variable with a connection string that is " +
                    "valid for your system.");
            }
        }


    }
}
InformationsquelleAutor halfpint | 2011-03-30
Schreibe einen Kommentar