我需要在装饰者和装饰控件之间传递一些参数。装饰者和装饰控件之间的交换参数
这是如何做到的?每次参数更改时,我是否应该使用新参数删除并添加新的装饰器?
例如,我的一个参数:
public static readonly DependencyProperty ThetaProperty =
DependencyProperty.Register("Theta", typeof (double), typeof (SplitControl), new PropertyMetadata(default(double), SetTheta));
public double Theta
{
get { return (double) GetValue(ThetaProperty); }
set { SetValue(ThetaProperty, value); }
}
private static void SetTheta(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
_adorner.Theta = (double) e.NewValue;
}
在装饰器西塔:
public double Theta
{
get
{
return (Math.Atan(((_middleTop - _middleBottom)/AdornedElement.DesiredSize.Height))) * 180/Math.PI;
}
set
{
double deltaX = (Math.Tan((Math.PI/180)*value))*(AdornedElement.DesiredSize.Height/2);
_middleTop = _middle + deltaX;
_middleBottom = _middle - deltaX;
}
}
你想传递什么类型的参数,你可以举个例子来说明一下吗?正如你参考了装饰的UIElement,你应该能够从中获得最相关的信息。 – SvenG 2012-01-04 11:31:35