Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Wenn Thumb aus dem Scrollviewer nach Links gezogen wird kann dort nicht hingescrollt werden
Create
myCSharp.de - Member



Dabei seit:
Beiträge: 24

Themenstarter:

Wenn Thumb aus dem Scrollviewer nach Links gezogen wird kann dort nicht hingescrollt werden

beantworten | zitieren | melden

Hallo,

ich habe ein Problem bei der Anzeige von Thumb-Elementen in einem Canvas, welcher wiederum im Scrollviewer ist. Wenn das Thumb nach rechts oder unten verschoben wird, kann ich einfach den Canvas in der Höhe und Breite vergrößern. Aber wie mache ich das, wenn ein Thumb nach links oder oben verschoben wird? Thumb.getLeft() geht dann in den Minusbereich.
Wenn ich die Breite um Thumb.getLeft *- 1 vergrößer wird zwar die Canvasfläche größer, nur hinscrollen kann ich immer noch nicht.
Weiß jemand wie man das lösen kann?
private Nachricht | Beiträge des Benutzers
CSharperUser
myCSharp.de - Member



Dabei seit:
Beiträge: 81

beantworten | zitieren | melden

Hallo Create,

erzeuge eine eigene Klasse, die von Canvas ableitet und überschreibe darin die MeasureSize-Methode. Innerhalb der Methode kannst du über die Children-Property auf die Elemente auf dem Canvas zugreifen und über deren Width und Height die maximale Größe des Canvas ermitteln. Problematik ist nämlich, dass das Canvas eine undefinierte Größe hat, solltest du sie nicht irgendwo fest definiert haben.

Jedes mal beim Drachen über den Tumb rufst du dann die InvalidateVisual-Methode des Canvas auf. Damit wird festgestellt, dass das gedraggte Element außerhalb des maximalen Bereichs des Canvas liegt und der Scrollviewer automatisch angezeigt.
private Nachricht | Beiträge des Benutzers
Create
myCSharp.de - Member



Dabei seit:
Beiträge: 24

Themenstarter:

beantworten | zitieren | melden

Hallo,
vielen Dank für deine schnelle Antwort. Ich werde das nun mal ausprobieren.
private Nachricht | Beiträge des Benutzers