Announcement

Collapse
No announcement yet.

dialogsteuerung über TREEVIEW

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • dialogsteuerung über TREEVIEW

    guten abend allerseits,

    ich komme aus der access-vba-programmierung und steige gerade über visual studio 2008 in die vb.net-welt ein.

    folgende situation:
    ich möchte eine dialoganwendung bauen, in der in dem hauptformular 2 panel platziert wurden. im linken panel soll über ein treeview die steuerung der einzelnen formular erfolgen. im rechten panel werden die jeweiligen formulare dann dargestellt.

    das treeview sieht in etwa so aus, das bei den jeweilgen knoten ein TEXT für die anzeige und ein TAG mit dem jeweiligen formularnamen steht.
    e.node.text = "Datensatz anlegen"
    e.node.tag = "frmNew"

    ich breche mir jetzt die finger, wenn ich dem rechten panel dynamisch das formular frmNew zuweisen will.
    schreibe ich zu testzwecken hart ins coding rein, das ich das formularn frmNEW haben will, klappt es. '
    ich muss irgendwie aus dem string frmNEW ein formular-objekt machen, oder?
    ABER WIE ????????

  • #2
    ich muss irgendwie aus dem string frmNEW ein formular-objekt machen, oder?
    Es geht über Reflection (ist aber für einen Ein-/Umsteiger sicher zu kompliziert).

    Ich würde bei deinem Ansatz anstatt Formularen Benutzersteuerelemente (UserControls) verwenden und diese in das Panel laden. Dafür sind UserControls besser geeignet als Formulare.

    Da du das TreeView verwendest kannst du in der Tag-Eigenschaft nicht nur einen Text sondern ein Objekt speichern. D.h. es ist möglich eine Instanz eines UserControls in der Tag-Eigenschaft zu speichern. Somit kann beim Auswählen eines Kntons das UserControl aus der Tag-Eigenschaft dem Panel hinzugefügt werden.

    mfG Gü

    PS: Solltest du schon weiter fortgeschritten sein und von Vererbung (OOP) etwas verstehen so erstelle ein "Basis-UserControl" von dem die anderen UserControls ableiten. Somit ist das Laden/Entladen per PlugIn-Technik in das Panel möglich.
    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

    Comment


    • #3
      hallo Gü

      dein hinweis, dass ich bei dem NODE.TAG auch ein objekt mitgeben kann, hat mich weiter gebracht.

      die dialogsteuerung läuft jetzt einwandfrei.
      übergebe dann im verlauf einfach das jeweilige form-object aus dem E.NODE.TAG an meine panelsteuerung und schon funzt es.

      vielen dank !!!!!

      Comment

      Working...
      X