Readdy Write  
0,00 €
Your View Money
Views: Count
Self 20% 0
Your Content 60% 0

Users by Links 0
u1*(Content+Views) 10% 0
Follow-Follower 0
s2*(Income) 5% 0

Count
Followers 0
Login Register as User

WPF: Daten in einem DataGrid anzeigen

06.08.2018 (👁7548)

WPF: Daten in einem DataGrid anzeigen

Dieses Beispiel zeigt, wie man Daten aus einer Datenbank in einem DataGrid anzeigt.

Dabei wird eine Tabelle aus einer bestehend lokalen Datenbank per drag und drop in die WPF Anwendung gezogen.

Im ersten Schritt zieht man unter Toos->DataGrid ein DataGrid in die WPF Anwendung

Dann auswählen von Database aus  (Database, Service, Objekt)

Dann das Database Model aussuchen.

Im Database Model wird später die Struktur der Datenbank als Dataset angezeigt.

Als Auswahl werden bestehende Data Connections angezeigt. Die lokale Datenbank  (service based) wird als Standard vorgeschlagen.

.mdf Dateien sind Sql Server Datenbanken.

Anschliessend wählt man alle Tabellen und Views aus, welche man im Projekt übernehmen will

Data Sources

Danach wird unter Data Sources die Datenbank als DataSet angezeigt mit den einzelnen Tabellen

DataSource: Projekt kompilieren.

Damit die DataSource angezeigt wird und eingebunden werden kann, muss man das Projekt erst kompilieren

Jetzt muss man nur noch aus dem Bereich: DataSources-> die Tabelle in das DataGrid ziehen

Entwurfsansicht

Nach dem Ziehen der Datasource-Tabelle in das Design->Datagrid wird die Struktur der Tabelle zur Entwurfszeit angezeigt

F5 Laufzeit

Beim kompilierten Start mit F5 wird eine lauffähige Datengrid-Tabelle im Formular erstellt, bei welchem die Daten direkt an die Tabelle gebunden sind und mit den Standart-Funktionen eines Grids ausgestattet sind.

Man kann in die untere Zeile neue Dateneingeben, ändern löschen.

Code zum Laden

Den c# Code zum laden des Datengrids findet man unter dem Load-Event des MainWindows

Standard-Code unter MainWindow.xal.cs

Zum Laden der DataSource in das Datengrid beim Laden des Formulars

private void Window_Loaded(object sender, RoutedEventArgs e)

{

 

    wpf_demo_Datagrid_Db.dbGridTestDataSet dbGridTestDataSet = ((wpf_demo_Datagrid_Db.dbGridTestDataSet)(this.FindResource("dbGridTestDataSet")));

    // Load data into the table tbl_GridTest. You can modify this code as needed.

    wpf_demo_Datagrid_Db.dbGridTestDataSetTableAdapters.tbl_GridTestTableAdapter dbGridTestDataSettbl_GridTestTableAdapter = new wpf_demo_Datagrid_Db.dbGridTestDataSetTableAdapters.tbl_GridTestTableAdapter();

    dbGridTestDataSettbl_GridTestTableAdapter.Fill(dbGridTestDataSet.tbl_GridTest);

 

    System.Windows.Data.CollectionViewSource tbl_GridTestViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("tbl_GridTestViewSource")));

    tbl_GridTestViewSource.View.MoveCurrentToFirst();

}