【发布时间】:2015-06-24 18:20:36
【问题描述】:
我有一个用户控件,它是一个旋转的“等待”图形。我已将其添加到表单中,并使用此 thread 中的代码在 Caliburn.Micro 中设置了一个约定@
然后我按照命名约定创建了一个属性,并相应地命名了这个用户控件:
<uc:LoadSpinner x:Name="Authenticating" />
我的财产如下所示:
protected bool _authenticatingIsVisible = false;
public bool AuthenticatingIsVisible
{
get { return _authenticatingIsVisible; }
set
{
_authenticatingIsVisible = value;
NotifyOfPropertyChange(() => AuthenticatingIsVisible);
}
}
我可以看到控件被绑定,当窗体启动时,微调器是不可见的。但是,当我将其设置为可见时,它仍然没有出现。为了简化事情并测试绑定,我在表单上创建了一个矩形并以相同的方式命名。它按预期出现/消失。所以它似乎是特定于用户控件或动画的东西。
我还尝试将用户控件包装在边框控件中并以相同的方式命名(想法是如果正常控件有效,则包含的用户控件应该在边框出现/消失时出现)。没有。
为什么这不起作用?
【问题讨论】:
-
你不需要绑定到 Visibility.Visible/Collapsed/Hidden 而不是 true 或 false 吗?
-
由于它可以与其他控件一起正常工作,因此它似乎可以正常工作。但是,我之前通过手动绑定和使用 BooleanToVisibility 转换器对此进行了测试,结果相同。
-
您是否尝试过以可见的 Spinner 开始,以查看实际的 Spinner 是否有问题?
标签: wpf caliburn.micro