这是一个有点奇怪的问题(.NET 3.5sp1)。
我有一个UserControl,其中包含三个ToggleButton,每个ToggleButton的IsChecked属性都绑定到UserControl本身的不同依赖属性上。其中两个默认为true,一个默认为false。
在应用程序启动时,UserControl本身(及其内容)被禁用。当稍后它被启用时,所有三个按钮都没有按下;但代码属性仍处于正确状态。
如果点击这些按钮,则属性将正确地切换,并且UI(仅针对该按钮)将更新以反映正确状态(即单击一个看起来未按下但具有真实绑定值的按钮将在第一次时不会显示任何可见变化,但更新为绑定值为false)。 第二次按下“故障”按钮将正常运作(如果它打开,按钮将按预期压缩)。
如果在启动时未禁用UserControl,则按钮将根据属性的状态正确显示。
不幸的是,UserControl应该在启动时禁用,因此我无法以启用状态启动;我希望有替代方案。 有任何想法吗?
(我尝试将属性默认设置为false,然后在用户控件的Load事件中将它们设置为true。没有任何区别。)
我有一个UserControl,其中包含三个ToggleButton,每个ToggleButton的IsChecked属性都绑定到UserControl本身的不同依赖属性上。其中两个默认为true,一个默认为false。
在应用程序启动时,UserControl本身(及其内容)被禁用。当稍后它被启用时,所有三个按钮都没有按下;但代码属性仍处于正确状态。
如果点击这些按钮,则属性将正确地切换,并且UI(仅针对该按钮)将更新以反映正确状态(即单击一个看起来未按下但具有真实绑定值的按钮将在第一次时不会显示任何可见变化,但更新为绑定值为false)。 第二次按下“故障”按钮将正常运作(如果它打开,按钮将按预期压缩)。
如果在启动时未禁用UserControl,则按钮将根据属性的状态正确显示。
不幸的是,UserControl应该在启动时禁用,因此我无法以启用状态启动;我希望有替代方案。 有任何想法吗?
(我尝试将属性默认设置为false,然后在用户控件的Load事件中将它们设置为true。没有任何区别。)