Autor Beitrag
PSP_GIGA
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Mi 19.10.11 09:50 
Hallo C# Forum,

ich hab eine Form in der ich eine Combobox habe z.B.

alle Anzeigen
Windows XP
Windows 7
Windows Server 2003

über die Combobox möchte ich eine andere Form ansprechen in der ich ein dataGridView habe. Im dataGridView ist eine Datenbank hinterlegt.

Jetzt möchte ich sie so Filter, dass wenn ich z.B. Windows XP auswähle nur die Inhalte angezeigt werden die mit Windows XP zutun haben.

mein Code:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
int index = Betriebssysteme.FindString(Betriebssysteme.Text);
            Betriebssysteme.SelectedIndex = index;

            BindingSource source1 = new BindingSource();
            source1.DataSource = dataGridView1;
            dataGridView1.DataSource = source1;

          
            switch (index)
            {
                case 0:
                    lzn.Show();
                    break;
                case 1:
                    
                    source1.Filter = "Betriebssystem = 'WinXP'";
                    lzn.Show();
                    break;



Betriebssystem in der Name der Spalte und WinXP ist der Inhalt der angesprochen werden soll.

Leider wird er nciht gefilter.

Ich hoffe ihr könnt mir weiterhelfen :)

Moderiert von user profile iconChristian S.: Code- durch C#-Tags ersetzt
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mi 19.10.11 11:03 
ausblenden C#-Quelltext
1:
2:
source1.DataSource = dataGridView1;
dataGridView1.DataSource = source1;


Ähm. Das DatagridView ist seine eigene Datenquelle :shock: Da solltest du nochmal drüber nachdenken.

Die BindingSource gehört zwischen die eigentliche Datenquelle und deinem DatagridView. Und Filtern kann die BindingSource gar nicht selber. Das reicht sie an die eigentliche Datenquelle weiter. Heißt bei einer DataTable würde das funktionieren da DataTable filtern unterstützt eine generische Liste aber nicht.