Utilizzo un Adorner in .NET 3.5 e sono in grado di disegnare eseguendo l'override di OnRender, ma ho bisogno della possibilità di ridisegnare l'adorner per modificarne l'aspetto.Animazione all'interno di un adorner (chiamata OnRender)
In sostanza sto cercando un modo per cancellare il contesto di disegno e chiamare di nuovo OnRender. Qual è il modo migliore per farlo, o c'è un approccio migliore?
public class MyAdorner : Adorner
{
private Brush brush = Brushes.Red;
public DragArrowAdorner(UIElement adornedElement) : base(adornedElement)
{}
public void RedrawWithBrush(Brush newBrush)
{
brush = newBrush;
// redraw..?
}
protected override void OnRender(System.Windows.Media.DrawingContext drawingContext)
{
// some drawing code...
drawingContext.DrawRectangle(
brush,
null,
new Rect(AdornedElement.DesiredSize));
}
}