Bagikan melalui


BindingSource.Filter Properti

Definisi

Mendapatkan atau mengatur ekspresi yang digunakan untuk memfilter baris mana yang ditampilkan.

public:
 virtual property System::String ^ Filter { System::String ^ get(); void set(System::String ^ value); };
public virtual string Filter { get; set; }
public virtual string? Filter { get; set; }
member this.Filter : string with get, set
Public Overridable Property Filter As String

Nilai Properti

String yang menentukan bagaimana baris akan difilter. Default adalah null.

Penerapan

Contoh

Contoh berikut menunjukkan cara menggunakan Filter properti dengan DataView. Untuk menjalankan contoh ini, tempelkan kode ke dalam Formulir Windows dan panggil PopulateDataViewAndFilter dari konstruktor formulir atau Load metode penanganan peristiwa. Formulir Anda harus mengimpor System.Xml namespace dan System.IO .

private void PopulateDataViewAndFilter()
{
    DataSet set1 = new DataSet();

    // Some xml data to populate the DataSet with.
    string musicXml =
        "<?xml version='1.0' encoding='UTF-8'?>" +
        "<music>" +
        "<recording><artist>Coldplay</artist><cd>X&Y</cd></recording>" +
        "<recording><artist>Dave Matthews</artist><cd>Under the Table and Dreaming</cd></recording>" +
        "<recording><artist>Dave Matthews</artist><cd>Live at Red Rocks</cd></recording>" +
        "<recording><artist>Natalie Merchant</artist><cd>Tigerlily</cd></recording>" +
        "<recording><artist>U2</artist><cd>How to Dismantle an Atomic Bomb</cd></recording>" +
        "</music>";

    // Read the xml.
    StringReader reader = new StringReader(musicXml);
    set1.ReadXml(reader);

    // Get a DataView of the table contained in the dataset.
    DataTableCollection tables = set1.Tables;
    DataView view1 = new DataView(tables[0]);

    // Create a DataGridView control and add it to the form.
    DataGridView datagridview1 = new DataGridView();
    datagridview1.AutoGenerateColumns = true;
    this.Controls.Add(datagridview1);

    // Create a BindingSource and set its DataSource property to
    // the DataView.
    BindingSource source1 = new BindingSource();
    source1.DataSource = view1;

    // Set the data source for the DataGridView.
    datagridview1.DataSource = source1;

    //The Filter string can include Boolean expressions.
    source1.Filter = "artist = 'Dave Matthews' OR cd = 'Tigerlily'";
}
Private Sub PopulateDataViewAndFilter() 
    Dim set1 As New DataSet()
    
    ' Some xml data to populate the DataSet with.
    Dim musicXml As String = "<?xml version='1.0' encoding='UTF-8'?>" & _
        "<music>" & _
        "<recording><artist>Coldplay</artist><cd>X&Y</cd></recording>" & _
        "<recording><artist>Dave Matthews</artist><cd>Under the Table and Dreaming</cd></recording>" & _
        "<recording><artist>Dave Matthews</artist><cd>Live at Red Rocks</cd></recording>" & _
        "<recording><artist>Natalie Merchant</artist><cd>Tigerlily</cd></recording>" & _
        "<recording><artist>U2</artist><cd>How to Dismantle an Atomic Bomb</cd></recording>" & _
        "</music>"
    
    ' Read the xml.
    Dim reader As New StringReader(musicXml)
    set1.ReadXml(reader)
    
    ' Get a DataView of the table contained in the dataset.
    Dim tables As DataTableCollection = set1.Tables
    Dim view1 As New DataView(tables(0))
    
    ' Create a DataGridView control and add it to the form.
    Dim datagridview1 As New DataGridView()
    datagridview1.AutoGenerateColumns = True
    Me.Controls.Add(datagridview1)
    
    ' Create a BindingSource and set its DataSource property to
    ' the DataView.
    Dim source1 As New BindingSource()
    source1.DataSource = view1
    
    ' Set the data source for the DataGridView.
    datagridview1.DataSource = source1
    
    ' The Filter string can include Boolean expressions.
    source1.Filter = "artist = 'Dave Matthews' OR cd = 'Tigerlily'"

End Sub

Keterangan

Biasanya digunakan dalam skenario pengikatan data yang kompleks, Filter properti memungkinkan Anda melihat subset DataSource. Hanya daftar yang mendasar yang mengimplementasikan IBindingListView pemfilteran dukungan antarmuka.

Ketika Filter tidak null, meneruskan BindingSource properti ini ke daftar yang mendasar. Jika Anda mengatur properti ini selama inisialisasi objek, panggilan akan ditangguhkan hingga setelah inisialisasi selesai.

Untuk membentuk nilai filter, tentukan nama kolom diikuti oleh operator dan nilai untuk difilter. Sintaks filter yang diterima tergantung pada sumber data yang mendasar. Jika sumber data yang mendasar adalah DataSet, , DataTableatau DataView, Anda dapat menentukan ekspresi Boolean menggunakan sintaks yang di dokumentasikan untuk DataColumn.Expression properti .

Nilai Filter properti memengaruhi nilai Count properti . Selain itu, Filter nilai akan bertahan ketika sumber data berubah. Untuk berhenti memfilter DataSource, panggil RemoveFilter metode .

Berlaku untuk

Lihat juga