DataGridView

  • VB.NET

Es gibt 10 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    DataGridView

    Hallo Leute,
    hoffe einer von euch kann mir helfen.
    Ich habe letztens beim programmieren das Tool DataGridView gefunden und fand es sehr nützlich.
    Ich möchte wissen, wie ich es schaffe, wenn ich auf eine Zeile klicke, einen Befehl auszuführen?
    Also ich habe 2 Tabellen.
    Nummer und Name.
    Wenn z.B. der Name "VisualBasic" angeklickt wird, kommt eine msgbox.

    Und ich wollte noch wissen, ob man die Sortierung verändern kann?
    Weil wenn man die Nummer sortiert ist alles gut.
    Sortiert man aber den Namen, hätte ich es gerne das er Alphabetisch und nach Nummer sortiert.
    Heißt wenn 5 mal der Name "VisualBasic" vorkommt
    Nummer Name
    01 VisualBasic
    02 VisualBasic
    03 VisualBasic
    04 VisualBasic
    05 VisualBasic
    soll der nicht so sortieren
    02 VisualBasic
    04 VisualBasic
    05 VisualBasic
    01 VisualBasic
    03 VisualBasic
    geht das?
    Das anklicken: DataGridView ist ein TabellenControl, diese haben ein OnClick-Event, welches dir sogar sagt, welche zelle gedrückt wurde.
    Schau es dir im ObjectBrowser oder im MSDN genauer an.

    Sortieren: Sortiere nach Kriterium a. Dann trennst du sie bei allen verschiedenen, also das du eine Liste mit allen Blub´s hast und eine Liste mit allen Bla´s... diese nochmal einzeln sortieren. :)
    Wenn Du einem DGV per DataBinding eine DataTable zuweist, erfolgt die Sortierung entsprechend den der Tabelle zugewiesenen Datenzypen (Integer, String, DateTime, ...).
    Außerdem kannst Du diese DataTables ganz easy per MyDataTable.WriteXml(DEIN_PFAD) und MyDataTable.ReadXml(DEIN_PFAD) handeln, um die xml-Interna musst Du Dich nicht kümmern.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    VB.NET-Quellcode

    1. Dim dt As New DataTable
    2. 'dt entsprechend initialisieren
    3. DataGridView1.DataSource = dt
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @Raidon5: Was hat das mit einer Textbox zu tun?
    @markus.obi: Ja.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ich wollte nur zur kontrolle den wert abfragen.
    ich habe jetzt auch gefunden was ich brauche und zwar das hier.

    Me.DataGridView1.Item(0, DataGridView1.CurrentRow.Index).Value = ""

    Aber @Kagurame
    erkläre mir nochmal etwas genauer wie du das mit dem Sortieren meintest.

    Raidon5 schrieb:

    Kann ich mit einem Befehl abfragen, welche zeile in welcher spalte das ist und das in eine Textbox eintragen?

    So Stück für Stück entwickelst du die Standard-Anforderungen einer Datenverarbeitung.

    Machs doch gleich richtig und verwende typisiertes Dataset und designergestütztes Databinding. Damit sind vmtl. alle deine Anforderungen abgedeckt und noch mehr.

    Gugge DB-Programmierung ohne Datenbank und Daten laden, speichern, verarbeiten und so Zeugs.