Windows phone 8.1 ToggleSwitch不符合Can约定

Windows phone 8.1 ToggleSwitch不符合Can约定,windows-phone-8.1,caliburn.micro,Windows Phone 8.1,Caliburn.micro,我正在构建一个Windows Phone 8.1应用程序WinRT/Windows应用商店,没有Silverlight,我使用Caliburn Micro版本2.0.1 根据我的观察,在我看来,世界上没有罐头公约 切换开关控制。在视图中,我有一个名为Switch的ToggleSwitch。 在ViewModel中,我有两个属性:Switch和CanSwitch,都是bool类型 鉴于: <ToggleSwitch x:Name="Switch" /> 我希望根据属性启用或禁用Tog

我正在构建一个Windows Phone 8.1应用程序WinRT/Windows应用商店,没有Silverlight,我使用Caliburn Micro版本2.0.1

根据我的观察,在我看来,世界上没有罐头公约 切换开关控制。在视图中,我有一个名为Switch的ToggleSwitch。 在ViewModel中,我有两个属性:Switch和CanSwitch,都是bool类型

鉴于:

<ToggleSwitch x:Name="Switch" />
我希望根据属性启用或禁用ToggleSwitch 可以切换。但这是行不通的。只有在建立了显式绑定之后,我才能得到 停止的行为

<ToggleSwitch x:Name="Switch"
              IsEnabled="{Binding CanSwitch}" />

我还在CanSwitch的getter中设置了一个断点。此断点从未命中。Caliburn Micro似乎忽略了CanSwitch。

Silverlight或Universal APp?WinRT/Win Store no Silverlight当您更改基础属性后台时,是否调用了make a NotifyOfPropertyChange=>CanSwitch,更改的位置?我检查了此项,但未成功。Caliburn Micro似乎完全忽略了CanSwitch标志。看到更新后。有线了一个例子,我认为你是绝对正确的,要把一个错误在这个。。。
private bool switch;

public bool CanSwitch
{
    get { return switch; }
    set 
    {
        switch= value;
        NotifyOfPropertyChange(() => switch);
    }
}
public bool Switch { get; set; }

public bool CanSwitch
{
    get
    {
        return false;
    } 
}
private bool switch;

public bool CanSwitch
{
    get { return switch; }
    set 
    {
        switch= value;
        NotifyOfPropertyChange(() => switch);
    }
}