我是以编程方式为DataGridColumn类似的绑定:
var path = "DictObj[" + key_str + "]";
column.Binding = new Binding(path);
Run Code Online (Sandbox Code Playgroud)
它通常工作正常,但是当key_str包含commma时,列中的单元格什么都不显示.我试过(没有太多的考虑)var path = "'...'","\'...\'","{}{...}","'{}...'",或"DictObj[[" + key_str + "]]",但不成功.
因为key_str它也用于显示目的,我不希望它删除它的逗号.任何的想法?
传递给a的路径Binding用于构造PropertyPath对象.该对象将逗号(,)视为特殊字符.你需要通过在逗号前放置一个插入符号(^)来逃避它.所以,你的路径var应该是这样的:
var path = "DictObj[" + key_str.Replace(",", "^,") + "]";
Run Code Online (Sandbox Code Playgroud)
根据PropertyPath XAML语法:"内部索引器([]),插入符(^)将转义下一个字符."
注意:从XAML创建类似的绑定实际上需要在逗号前面有两个转义字符(^ \):
{Binding Path=Dict[Some^\,String]}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
476 次 |
| 最近记录: |