Witam,
jakiś czas temu zacząłem się interesować C# i technologią .NET, i dzisiaj postanowiłem poruszyć temat aplikacji opartej na bazie danych.

Za pomocą jakiegoś przykładu znalezionego w sieci, oraz innych informacji z różnych stron powstało takie "coś": (kod ma trochę moich wstaw - komentarzy do własnego użytku)

 
namespace DBadoWFormManual
{
    public partial class Form1 : Form
    {
        //specify the ConnectionString property
        public string conString= @"Provider=Microsoft.Jet.OLEDB.4.0;" + 
                                 @"Data Source=..\\..\\PersonDatabase.mdb";

        public OleDbConnection con; 
        public OleDbDataAdapter dAdapter;
        public DataSet dSet;
        
        public Form1()
        {
            InitializeComponent();

            //Initializes a new instance of the OleDbConnection
            con = new OleDbConnection(conString);
            // open the database connection with the property settings
            // specified by the ConnectionString "conString"
            con.Open();

            dAdapter = new OleDbDataAdapter("SELECT * FROM PersonTable", con);
            //można też było tak:
            //dAdapter.SelectCommand = new SqlCommant("SELECT * FROM PersonTable",con);
            dSet = new DataSet();
            dAdapter.Fill(dSet, "PersonTable"); //bez "PersonTable" też przejdzie
            con.Close();

            //---Bind Data to the Windows Forms DataGridView Control---

            // this.dataGrid1.DataSource = dSet;  //to działa! ale trzeba samemu rozwinąć tabele
            this.dataGrid1.DataSource = dSet.Tables["PersonTable"];
            //this.dataGridView1.DataSource = dSet; // to nie działa!
            this.dataGridView1.DataSource = dSet.Tables["PersonTable"];

           
            //jednak brak aktualizacji do bazy przy edycji danych na DataGrid
           
        }
    }
}

Z tego co doczytałem kontrolka DataGrid jest już zastąpiona DataGridView.. (ale ja wzorowałem się na przykładzie).

Przykład ten jest prosty, jednak zrobienie go zajęło mi ponad 2h :|
Chciałbym go dalej powoli rozwijać, i mam problem ze zrobieniem takiego mechanizmu, że jak edytuje dane na DataGrid, to dane te są następnie zapisywane w bazie (na stałe).

Czytałem coś o bindowaniu kontrolek, np. TextBox'a , ale z tego co się doczytałem, to ta linia:
this.dataGridView1.DataSource = dSet.Tables["PersonTable"]; zapewnia już bindowanie..?

EDIT:

Udało się zrobić aktualizacje za pomocą DataGrid. Jak się okazało przyczyna nie leżała po stronie kodu, a bazy danych która nie posiadała klucza głównego (o czym wcześniej nie wiedziałem / nie pomyślałem) gdyż tą bazę sam nie projektowałem (tylko pobrałem z sieci).