Entwickler-Ecke

WinForms - ListView als Datenquelle für andere ListView


Trombone - Di 06.09.11 12:57
Titel: ListView als Datenquelle für andere ListView
Moin,
ich habe mal ne frage:

wie kann ich einer ListView eine andere listView, die zB. als Ergebnis einer Methode zurückgegeben wird zuweisen?

C#-Quelltext
1:
2:
3:
listView1 = myClass.myMethod(myArgument); // die Methode gibt ein listView Object zurück
oder
lisView2 = listView1;

funktioniert leider nicht.

kann mir da jemand mit der Syntax weiterhelfen oder ist das insgesamt unsinn was ich da vorhab? bessere Idee?

Gruß!


Ralf Jansen - Di 06.09.11 13:07

Wenn du eine Methode hast die ein ListView erzeugt dann musst du dafür sorgen das die erzeugte ListView auch angezeigt wird. Die einer Variablen zuzuordnen macht genau nur das nämlich das du eine Variable hast die auf dein ListView zeigt nicht mehr. Um ein ListView visuell irgendwo anzuzeigen musst du die einem bereits visuell angezeigt Control (also am ehesten einer Form) zuweisen. Also zum Beispiel


C#-Quelltext
1:
this.Controls.Add(myClass.myMethod(myArgument));                    


unter der Annahme dein Code gehört zu einer Form Instanz.

Zitat:
oder ist das insgesamt unsinn


Höchstwahrscheinlich ;) Ohne konkreten Grund warum du das probierst aber nicht endgültig bewertbar.


Trombone - Di 06.09.11 13:57

Dann sollte die Methode wohl besser den Inhalt der ListView und nicht eine Listview an sich zurückgeben.

Die aus einer Sql Db Stammenden Daten werden in einem DataSet untergebracht, welches von der Methode zurückgegeben werden kann:

die folgenden Links erklären super wie sowas geht:
http://msdn.microsoft.com/de-de/library/bh8kx08z(v=vs.80).aspx#Y184
http://www.akadia.com/services/dotnet_listview_sort_dataset.html


Th69 - Di 06.09.11 14:40

Hallo Trombone,

ich würde auch "DataBinding" empfehlen. Jedoch wird dies nicht von der ListView unterstützt, aber alternativ kann man ein DataGridView dafür benutzen.