我有几次集成UserControl的视图。
文本被绑定并发生propertyChanged。都好。
但是BorderBrush永远不会改变。.ShiftID和BoxName始终为null。
我不确定我在这里缺少什么..整天都在玩耍和阅读东西。尚无解决方案。
一些建议将非常有帮助。
最佳答案
我不确定您如何实例化BorderBrush属性,但是对我来说它确实是这样工作的:
public Brush BorderBrush
{
get { return (Brush)GetValue(BorderBrushProperty); }
set { SetValue(BorderBrushProperty, value); }
}
// Using a DependencyProperty as the backing store for BorderBrush. This enables animation, styling, binding, etc...
public static readonly DependencyProperty BorderBrushProperty =
DependencyProperty.Register("BorderBrush", typeof(Brush), typeof(MainWindow), new PropertyMetadata(null));
此实例化发生在InitializeComponent之后:
BorderBrush = new SolidColorBrush(Colors.Green);
在某个时候,我有一个Button Click处理程序,可以在其中进行更改:
(BorderBrush as SolidColorBrush).Color = Colors.Red;
我不确定这是否针对您的目标,但我没有看到您的实例化,我认为这可能是一个解决方案。
关于c# - UserControl属性绑定(bind)问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30832415/