首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从ObserverCollection绑定到ToggleSwitch 'IsChecked‘

从ObserverCollection绑定到ToggleSwitch 'IsChecked‘
EN

Stack Overflow用户
提问于 2017-07-09 23:30:20
回答 1查看 164关注 0票数 0

我尝试从observerCollection绑定到ToggleSwitch(MahApp),但不起作用

XAML:

代码语言:javascript
复制
<mah:ToggleSwitch Name="switchLEDA" IsChecked="{Binding ConfParams[0], Mode=TwoWay}" Content="" Grid.Column="2" Grid.Row="2"/>

ViewModel:

代码语言:javascript
复制
public ObservableCollection<bool> ConfParams
    {
        get { return _chromaConfigurationModel.ConfParams; }
        set { _chromaConfigurationModel.ConfParams = value; }
    }

型号:

代码语言:javascript
复制
private ObservableCollection<bool> _confParams;
 public ObservableCollection<bool> ConfParams
    {
        get { return _confParams; }
        set { _confParams = value; }
    }

有谁能让我停下来吗?

EN

回答 1

Stack Overflow用户

发布于 2017-07-10 18:22:44

您无法更改ObservableCollection<bool>bool的值,因此您的TwoWay绑定将不起作用。bool是一种在传递时复制的值类型。

您应该绑定到一个可以实际设置的属性:

代码语言:javascript
复制
public class ConfParams
{
    public bool Value { get; set; }
}

视图模型:

代码语言:javascript
复制
public ObservableCollection<ConfParams> ConfParams
{
    get { return _chromaConfigurationModel.ConfParams; }
    set { _chromaConfigurationModel.ConfParams = value; }
}

视图:

代码语言:javascript
复制
<mah:ToggleSwitch Name="switchLEDA" IsChecked="{Binding ConfParams[0].Value, Mode=TwoWay}" Content="" Grid.Column="2" Grid.Row="2"/>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44998044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档