dataSasetable im Datensatz, nicht erforderlich, um die Datenquelle
zu ändern Einführung
Abhängig von der Datenquelle hat DataGridView -Datenfilter viele Möglichkeiten. Bei Verwendung von DataGridView.DataSource -Attributen wird das Filterungsdatensatz jedoch einzigartige Herausforderungen mit sich bringen. In diesem Artikel wird die Lösung für dieses Problem erläutert und das Filterung ermöglicht, ohne die Datenquelle zu ändern.
Übersicht über die Frage
DataTable direkt in DataGridView (Beispiel 1) ermöglicht die Verwendung von DataTable.DefaultView.rowFilter zum Filter. Wenn der Datensatz jedoch an DataTable gebunden ist (Beispiel 3), aktualisiert die gleiche Filtermethode die DataGridView nicht. Dies liegt daran, dass DataGridView.DataSource -Attribut anstelle des zugrunde liegenden DataTable auf Datensatz festgelegt wird. Lösung: Halten Sie die Datenquelle
auf
Um den Datensatz im Datensatz zu filtern, ohne die Datenquelle zu ändern, können wir die folgenden Methoden verwenden:Verwenden Sie das DataMember -Attribut, um den Datensatz aus dem Datensatz zu erhalten:
<code class="language-csharp">DataTable table = (DataTable)dataGridView1.DataSource;</code>
<code class="language-csharp">table.DefaultView.RowFilter = string.Format("Field = '{0}'", textBoxFilter.Text);</code>
Schlussfolgerung
DataGridView zum Filtern des Datensatzobjekts in Dataset muss direkt für das Raster gebeten werden, wenn es direkt an das Raster gebunden ist. Durch die Verwendung der DataMember -Eigenschaft und die Anwendung von Filtern auf die zugrunde liegende DataTable können wir Daten effektiv filtern, ohne die Integrität der Datenquelle zu beeinflussen.Das obige ist der detaillierte Inhalt vonWie filtert ich Datatables in Datasets für DataGridViews, ohne die Datenquelle zu ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!