Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF MVVM Binding Checkbox.IsChecked到字典中的命名项<;字符串,bool>;_C#_.net_Wpf_Mvvm_Binding Expressions - Fatal编程技术网

C# WPF MVVM Binding Checkbox.IsChecked到字典中的命名项<;字符串,bool>;

C# WPF MVVM Binding Checkbox.IsChecked到字典中的命名项<;字符串,bool>;,c#,.net,wpf,mvvm,binding-expressions,C#,.net,Wpf,Mvvm,Binding Expressions,我有一组复选框,它们都表示相同类型的不同选择(例如,它们都是不同的文件类型)。我觉得将每个复选框绑定到ViewModel中的一个单独属性有些过分,我更喜欢将它们绑定到一个集合,并使用绑定语法将每个复选框按键绑定到集合中的特定项。我试图坚持MVVM模式,所以我不想变得懒惰并处理检查过的事件或类似的事情 是否有一种方法可以使用WPF绑定语法表示集合中的路径或键?例如,如果我在ViewModel中将名为FileTypes的字典作为公共属性公开,是否有方法将其中一个复选框绑定到FileTypes[“as

我有一组复选框,它们都表示相同类型的不同选择(例如,它们都是不同的文件类型)。我觉得将每个复选框绑定到ViewModel中的一个单独属性有些过分,我更喜欢将它们绑定到一个集合,并使用绑定语法将每个复选框按键绑定到集合中的特定项。我试图坚持MVVM模式,所以我不想变得懒惰并处理检查过的事件或类似的事情

是否有一种方法可以使用WPF绑定语法表示集合中的路径或键?例如,如果我在ViewModel中将名为FileTypes的
字典作为公共属性公开,是否有方法将其中一个复选框绑定到FileTypes[“aspx”]?如果我有一个更复杂的数据结构,比如
Dictionary

你几乎拥有了它——只需在索引器参数周围加上引号:

{Binding FileTypes[aspx]}
更复杂的数据结构只需要一系列索引器,例如

{Binding Foo[aspx][Bar]}
顺便说一句,MSDN中有一个很好的资源,在WPF>数据>数据绑定>绑定声明概述下--向下滚动到“绑定路径语法”,以获得可以在绑定路径中使用的符号和约定的摘要