Tooltip pro Zeile aus anderer Tabelle

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von rrobbyy.

    Tooltip pro Zeile aus anderer Tabelle

    Hallo zusammen,

    Ich habe zwei Tabellen, die über 1:n verbunden sind. (typisiertes Dataset)

    Ich möchte jetzt in Tabelle1 pro Datenzeile ein Tooltip anzeigen lassen, der eine bestimmte Info (bestimmte Spalte) aus Tabelle2 anzeigt.

    Ich könnte natürlich 2 Schleifen machen, aber geht das nicht auch "einfacher"? Bei vielen Datensätzen dauert das ja auch eine gewisse Zeit.
    Könnte man nicht alle Zeilen der Tabelle2 durchlaufen und die entsprechenden Zeilen der Tabelle1 auf einmal diesem Tooltip zuweisen?

    Vielleicht muss ich ja wirklich über mehrere Schleifen arbeiten. Im Kopf bekomme ich das hin, aber an der Umsetzung scheitert es mal wieder...:-(
    Willst Du ein ToolTip-Control pro Tabellenzeile erstellen? Oder wo sollen die ToolTips angezeigt werden? In nem DGV? WPF? WinForms? N paar zu wenig Infos vorhanden, wie Du merkst. Notfalls poste ein Beispielbild.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    ah. verdammt. ja, die lieben Infos.
    Es ist lediglich eine WinForms-Anwendung mit einem Standard-Datagridview. Das DGV stellt ja über .Cells.ToolTipText bereits eine Möglichkeit dar. Dementsprechend bräuchte ich also keine weiteres Controls.

    Einen Tooltip für die gesamte Zeile wäre das ideal, ist aber nicht zwingend erforderlich. Einzelne Zellen würden reichen.
    Der Tooltip erscheint ja, wenn man mit der Maus über die Zelle fährt.
    Und warum setzt Du dann nicht jeden .Cells.ToolTipText nach dem Datenladen?
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    das laden der daten läuft ja normal über einen tableadapter inkl. bindingsource, der die daten aus einer SQL-DB lädt. das passiert ja quasi automatisch.


    wenn ich eine tabelle mit 500 zeilen in tabelle1 habe und ich habe 20 zeilen in der tabelle2, müssten die schleifen ja insgesamt 10000 mal rattern, damit ein tooltip in tabelle1 pro zelle / zeile erstellt wird.
    ich dachte, dass das irgendwie einfacher und schneller gehen könnte, daher die obere frage
    Das mit dem Cell-Tooltip hat auch den Nachteil, dass du recht umsichtigen Code schreiben musst, um die Tooltips immer aktuell zu halten:
    Wenn das DGV umsortiert oder gefiltert wird, oder wenn Datensätze hinzukommen.

    Alternative wäre im DGV_RowPrePaint die Tooltips zu berechnen.
    Das wird ziemlich oft gefeuert, aber immer nur für die sichtbaren DatagridviewRows - also nie für 500 Zeilen gleichzeitig.
    Der andere Vorteil ist, da gibts nichts nachzuführen - es aktualisiert sich, wenn was neues angezeigt wird.

    Deine Rechnung mit den 500 * 20 Zeilen ist auch nicht korrekt. Wenn es eine Relation zwischen den Tabellen gibt, benötigt man keine verschachtelte Schleife, sondern kann den verknüpften Wert sehr sehr schnell abrufen.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ErfinderDesRades“ ()