Hallo.
Ich versuche in ein ListView mehrere Spalten einzufügen.
Dazu verwende ich folgenden Code:
private void loadGrid()
{
OleDbConnection con = new OleDbConnection();
con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Mitarbeiter.accdb;";
con.Open();
OleDbCommand cmd = new OleDbCommand("Select * FROM Mitarbeiter");
cmd.Connection = con;
OleDbDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
lb_mitarbeiter.Items.Add(reader["nachname"]);
lb_mitarbeiter.Items.Add(reader["vornamename"]);
}
reader.Close();
con.Close();
}
Nun macht er mir aber die beiden Items untereinander.
Ich hätte Sie aber gerne Nebeneinander. In vielen Threads lese ich immer von listview.subitem und Grid.view = view.details;
Beides wird mir als Fehler angezeigt da es die Definition nicht gibt ?
Ich verwende VS 2019 WPF App in C#
Kann mir da jemand auf die Sprünge helfen ?
Hallo,
auf diese Art und Weise wirst Du mit WPF keinen Spaß haben.
WPF ist so konzipiert, dass man Data Binding auf Basis von MVVM verwendet.
[Artikel] MVVM und DataBinding
Verwendest Du Code Behind, wie Du hier es machst, wirst Du von Workaround zu Workaround stolpern.
Auch Access als Store ist keine gute Idee; Access ist keine Datenbank.
Willst Du einen lokalen, portablen Storage, dann verwende Sqlite oder LocalDB - aber kein Access.
Aktuell schreibst Du alles in eine Spalte - Du gibst nirgends Columns an.
Willst Du Items nebeneinander haben, dann hat das prinzipiell nichts mit Daten zutun, sondern mit dem Styling; eben via Columns.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code