作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我提出的 here 的后续问题-
控制类有一个依赖属性——
private static readonly DependencyProperty
_Color = DependencyProperty.Register( "Color", typeof( Color ), typeof( ColorDefiner ), new PropertyMetadata( Colors.Black ) );
public Color Color {
get { return ( Color )this.GetValue( ColorDefiner._Color ); }
set { this.SetValue( ColorDefiner._Color, value ); }
}
<Slider
x:Name="sdrRed" Height="32" Minimum="0" Maximum="1" Width="294" TickPlacement="Both"
TickFrequency="0.01" Value="{Binding Color, Mode=TwoWay, ElementName=Me}">
</Slider>
Me
是
UserControl
的名称.我的想法是问题是因为我指向
Color.ScR
等等。
最佳答案
如果我理解得很好,您有一个内部有 slider 的 userControl。
这就是我在 Xaml 中执行以下操作的方式。
<UserControl x:Name="MultiSlider">
...
<Slider Color="{Binding Color, ElementName="MultiSlider"}.../>
...
</UserControl>
public Color Color
{
get { return (Color)GetValue(ColorProperty); }
set { SetValue(ColorProperty, value); }
}
public static readonly DependencyProperty ColorProperty =
DependencyProperty.Register("Color", typeof(Color), typeof(MySlider), new PropertyMetadata(Colors.Red));
public double RValue
{
get { return (double)GetValue(RValueProperty); }
set { SetValue(RValueProperty, value); }
}
public static readonly DependencyProperty RValueProperty =
DependencyProperty.Register("RValue", typeof(double), typeof(MySlider), new PropertyMetadata(0, ValueChanged));
private static void ValueChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
var currentColor = (d as MySlider).Color;
var newcolor = new Color() { R = (byte)e.NewValue, B = currentColor.B, G = currentColor.G };
(d as MySlider).Color = newcolor;
}
关于c# - 如何将 CustomControl 属性绑定(bind)到控件本身?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29681315/
我是一名优秀的程序员,十分优秀!