Allgemeine C# Datenbankanbindung

ralfwolf

Grünschnabel
Hallo,
habe eine Adressverwaltung, habe versucht die Datenbankanbindung in eine eigene Klasse (2. Datei) zu stellen und von dort ein gefülltes Datenset zu erhalten.

Das Problem ist das ich jetzt nicht mit dem DataBinding navigieren kann.

Hat jemand eine Idee was ich ändern muss?

Code Formular:
public class frmSDAdressenart : System.Windows.Forms.Form
{
/* Instanz von Klasse class_db als dbAdressenart
* class_db zu finden in datei class_db.cs */
class_db dbAdressenart = new class_db();

string strSqlAdressenart = @"SELECT * FROM tblSDAdressenart ORDER BY strAdressenart";
string strDsAdressenart = @"C:\Programme\RWAdressverwaltung\mdb\db_adressen.mdb";
string strTblAdressenart = @"tblSDAdressenart";

...

private void frmSDAdressenart_Load(object sender, System.EventArgs e)
{
// Liest das DataSet ein und weist die DataBindings zu
DataSet dbDs = dbAdressenart.db_open(strSqlAdressenart, strDsAdressenart, strTblAdressenart);
this.txtAdressenart.DataBindings.Add("Text", dbDs.Tables[strTblAdressenart].DefaultView, "strAdressenart");
this.txtBemerkung.DataBindings.Add("Text", dbDs.Tables[strTblAdressenart].DefaultView, "memoBemerkung");
this.dgAdressenart.DataSource = dbDs.Tables[strTblAdressenart].DefaultView;

// DataGridTableStyle Instanz erstellen
DataGridTableStyle dgTs = new DataGridTableStyle();
dgTs.MappingName = strTblAdressenart;
dgTs.RowHeadersVisible = false;

// Spalte für DataGridTableStyle Instanz erstellen und anpassen
DataGridTextBoxColumn dgct = new DataGridTextBoxColumn();
dgct.HeaderText = "Adressenart";
dgct.MappingName = "strAdressenart";
dgct.Width = 250;
dgTs.GridColumnStyles.Add(dgct);

// Zuweisen vom neuen DataGridTableStyle zum DataGrid
this.dgAdressenart.TableStyles.Add(dgTs);
}

Class DB_LOAD
public DataSet db_open(string strSqlCommand, string strDataSource, string strTable)
{
// Verständnis:
// Die DB Connection zeigt die Verbindung zur DB
// Der Datenadapter liest die Daten (per SQL Befehl) über die DB Connection
// aus der DB und füllt damit das DataSet
// Das DataSet enthält alle Datentabellen

// DB Connection
OleDbConnection DbCon = new OleDbConnection();

DbCon.ConnectionString= @"Provider=Microsoft.Jet.OLEDB.4.0;" +
@"Data Source=" + strDataSource;

DbCon.Open();

// String zum Auslesen der Daten
//string DbDaStr = ;

// DB Daten Adapter
OleDbDataAdapter DbDa = new OleDbDataAdapter(strSqlCommand, DbCon);

// Datenset inizieren
DataSet dbDs = new DataSet();
// Datenadapter füllt das Dataset
DbDa.Fill(dbDs,strTable);

return dbDs;
}

Danke vorab!
Ralf
 
Zurück