ich habe eine Klasse Buddy, die Elemente einer BindingList darstellen soll:
public class Buddy
{
private string name;
private int id;
public Buddy() { }
public Buddy(string nameForPart, int numberForPart)
{
Komponentenname = nameForPart;
IdBuddy = numberForPart;
}
public string Komponentenname
{
get { return name; }
set { name = value; }
}
public int IdBuddy
{
get { return id; }
set { id = value; }
}
}
Die Liste wird dann im Prinzip folgendermaßen einem DataGridView zugeteilt:
BindingList<Buddy> blBuddy;
blBuddy = new BindingList<Buddy>();
/* füllen der Buddyliste */
komponentenBuddyBindingSource.DataSource = blBuddy;
this.idBuddyDataGridViewTextBoxColumn.DataSource = this.komponentenBuddyBindingSource;
Dabei wird nur eine Spalte über diese BindingList gefüllt, für die anderen Spalte ist allesamt die Tabelle direkt als BindingSource angegeben.
Beim Start ist das DataGridView erst einmal unsichtbar. Sobald ich es auf visible = true setze erhalte ich allerdings folgenden Fehler, falls die DataTable nicht leer ist:
Fehler |
Das Objekt des Typs "Buddy" kann nicht in Typ "System.Data.DataRowView" umgewandelt werden. |
In einer einfacheren Testanwendung ohne anderen Spalten und auf einem einfachen DataSet basierend funktioniert das so. Warum hier nicht? Stört da die andere Bindung?
Gruß
UHM