Entwickler-Ecke

WPF / Silverlight - GreifPunkte an einem Rectangle/ Rectangle Tracker / Adorners


mmp5 - Mo 28.06.10 08:28
Titel: GreifPunkte an einem Rectangle/ Rectangle Tracker / Adorners
Hallo,

ich will Greifpunkte, wie Ihr sie aus vielen PaintProgrammen kennt an einem Rectangle haben.
Ein vorgefertigtes WPF-UIElement gibts dazu ja nicht.

Wie mach ich mir denn da eins selbst?

Code -> class myRect : Rectangle{} ?
XAML?


mmp5 - Di 29.06.10 15:15

Wie gut dass ich mein Besten Freund Google hab.

Also man kann natürlich z.B. Einen Canvas/Rectangle machen, und diesem dann mit dem "decorator design pattern" ein hübschen umhang mit Greifpunkten Basteln und diesen dann resizeable machen.

oder Man nimmt einfach das Adorner Element aus WPF und man hat/kann alles einfach implementieren:
Die wichtigsten Codezeilen im Überblick:


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
public class myAdorner : Adorner
{
  public ResizingAdorner(UIElement adornedElement) : base(adornedElement)
  { 
    // ... 
  }
}




C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
public class myWindow : Window
{
  AdornerLayer aLayer;

  private clickBla()
  {
    aLayer = AdornerLayer.GetAdornerLayer(selectedElement);
  }
}



Viel spass beim Tüfteln ;)


Kha - Di 29.06.10 18:53

Exakt, ein Adorner sollte hier das Mittel der Wahl sein. Nicht zufällig geht das Beispiel unter Adorners Overview [http://msdn.microsoft.com/en-us/library/ms743737.aspx] genau in diese Richtung ;) .