Laden...

Rechteck mit mehreren Verbindungslinien im Canvas verschieben...?

Erstellt von Dayzz2110 vor 13 Jahren Letzter Beitrag vor 13 Jahren 3.101 Views
D
Dayzz2110 Themenstarter:in
14 Beiträge seit 2011
vor 13 Jahren
Rechteck mit mehreren Verbindungslinien im Canvas verschieben...?

Hi,

Folgendes Problem:
über einen Button erstelle ich in einem Canvas Rechtecke die automatisch mit einer Verbindungslinie miteinander verbunden sind. Dabei ist das erste Rechteck fix, also kann nicht verschoben werden.
Wenn ich nun ein Rechteck verschiebe wäre es toll wenn die Linie sich dann dem entsprechend mitverschieben würde.
Aber es lässt sich immer nur die Linie des zuletzt hinzugefügten Rechtecks verschieben.

Woran liegt das?
Ist es möglich die Linien anhand der Koordinaten zu ermitteln und dann dem entsprechend zu verändern?
Habt ihr mir Vorschläge wie man so etwas vielleicht auch ganz anderst lösen könnte?

Wäre über eure Hilfe und Vorschläge sehr Dankbar!

Grüße...

L
416 Beiträge seit 2008
vor 13 Jahren

Aber es lässt sich immer nur die Linie des zuletzt hinzugefügten Rechtecks verschieben.

Woran liegt das?

Ohne zu wissen wie du das konkret versuchst kann diese Frage nicht wirklich beantwortet werden.

Ich gehe davon aus die Rechtecke und die Linien repräsentieren irgendwelche Objekte deiner Datenschicht. Dort werden diese wohl irgendwie identifiziert. Hinterlege diese Informationen den Controls im Canvas (Im Name-Feld zb.) und suche sie beim Verschieben damit wieder heraus. Dann kannst du sie entsprechend verschieben.

3.430 Beiträge seit 2007
vor 13 Jahren

Hallo Dayzz2110,

willkommen beim myCSharp.de

Da kann man jetzt nicht viel dazu sagen ohne genauere Details zu kennen.
Aber ich kann dir da mal einen Link geben: WPF draggable objects and simple shape connectors

In diesem Tutorial wird genau das erklärt was dir Probleme macht.
Viel Spass damit

Gruß
Michael

1.044 Beiträge seit 2008
vor 13 Jahren

Hallo Dayzz2110,

wir können dir schlecht weiterhelfen, wenn wir sehr wenig über dein Problem wissen. Deine Aussagen sind sehr oberflächlich formuliert. Wir können das Problem nur erahnen. Kannst du dein Problem bitte ein wenig genauer schildern? Siehe auch [Hinweis] Wie poste ich richtig? Punkt 5.

Das hört sich sehr nach Behaviors an. Der Rest ist nur Mathe.

zero_x

D
Dayzz2110 Themenstarter:in
14 Beiträge seit 2011
vor 13 Jahren

danke euch zwei!
hat mir weitergeholfen!

muss allerdings auch zugeben dass ich vorhin n bissle auf m schlauch stand, und das so lange dass ich schon fast verzweifelt bin!
naja, nicht mein tag!

auf jedenfall danke nochmal für die richtige "Richtung"...!

D
Dayzz2110 Themenstarter:in
14 Beiträge seit 2011
vor 13 Jahren

Stehen lieder schon wieder vor einem Problem zu obigem Thema.

Mein Ziel ist es bewegliche Rectangles zu erstellen ,die z. B. Textboxen und noch ein paar andere Elemente enthalten. Ausserdem sollen diese Rectangle-Elemente über eine Line verbunden werden können.

Ich habe nun leider die Befürchtung, dass das Rectangle-Element für solche Sachen nicht gerade die beste Entscheidung war.

Habt ihr Vorschläge mit welchem Element sich o. g. Aufgabenstellung besser erfüllen lässt?
Vielleicht mit einem GroupPanel?

Kennt jemand ein Tutorial das durch ähnliche Aufgaben durchführt?

1.044 Beiträge seit 2008
vor 13 Jahren

Hallo Dayzz2110,

warum soll das Rectangle für die Zwecke nicht ausreichen? Ich denke sehr wohl, dass ein Rectangle hierfür ausreichen müsste. Welche Vorteile erhoffst du dir mit anderen Controls, wenn ja welche oder welches?

zero_x

D
Dayzz2110 Themenstarter:in
14 Beiträge seit 2011
vor 13 Jahren

Danke für deine schnelle Antwort...

Ich hatte vor die Rectangle-Klasse an meine "MyRectangle"-Klasse zu vererben, damit ich anhand zweier Listen (ParentList und ChildrenList) je Objekt, festhalten kann welche Rectangles miteinander verbunden sind.

Oder ist meine Denkweise nicht korrekt?
Hast du mir vielleicht noch einen anderen Vorschlag wie ich die Sache lösen könnte?