Ich hab hier ne Klasse mit der ich mir n Datatable aus ner SQL-DB erstelle.
in der Form lass ich mir den table dann so übergeben:
Jetzt hab ich das Problem, dass in der ersten Spalte des tables ne ID als Primärschlüssel existiert, die ich brauche weil ich noch Methoden zum Löschen und Hinzufügen schreiben will.
Wenn ich aber jetzt vorm Befüllen "tb1.Columns[0].AutoIncrement = true" setzte oder den incrementspeed/step ändere, dann bleibt mein DatagridView leer. Irgendwas muss da schieflaufen bei der Übergabe und ich seh nicht was.
Code:
namespace WindowsFormsApplication1
{
class Mitarbeiterdb{
static MySqlConnection con = new MySqlConnection("****");
MySqlDataAdapter da = new MySqlDataAdapter("SELECT * FROM mitarbeiter.mitarbeiter", con);
DataTable tb1 = new DataTable();
public void createmitarbeiterdb(){
//tb1.Columns[0].AutoIncrement = true;
//tb1.Columns[0].AutoIncrementSeed = -1;
//tb1.Columns[0].AutoIncrementStep = -1;
da.Fill(tb1);
}
public DataTable gettable(){
return tb1;
}
}
}
in der Form lass ich mir den table dann so übergeben:
Code:
public partial class Form1 : Form
{
Mitarbeiterdb db1 = new Mitarbeiterdb();
private void Arbeitszeiterfassung_Load(object sender, EventArgs e)
{
db1.createmitarbeiterdb();
dataGridView1.DataSource = db1.gettable();
}
Jetzt hab ich das Problem, dass in der ersten Spalte des tables ne ID als Primärschlüssel existiert, die ich brauche weil ich noch Methoden zum Löschen und Hinzufügen schreiben will.
Wenn ich aber jetzt vorm Befüllen "tb1.Columns[0].AutoIncrement = true" setzte oder den incrementspeed/step ändere, dann bleibt mein DatagridView leer. Irgendwas muss da schieflaufen bei der Übergabe und ich seh nicht was.