我有一个 Windows WPF 应用程序,它将“Person”类型的对象的 Observablecollection 绑定到列表框。Person 通过模板显示,该模板为每个人生成一个“扩展器”(即“查看有关 Mr.X 的更多详细信息”)。在扩展时,我想在后台做一些事情(所以我添加了一个事件处理程序'Expander_Expanded',但我还需要程序记住哪些扩展器被扩展,即我想将这个人的'名字'传递到事件。虽然我发现了一些类似的问题,但我不太明白答案......
此外,也许了解语言架构的人可以解释为什么该语言不允许以下最合乎逻辑的解决方案:向 person 类添加属性
public ExpanderName {get{return "Expander_"+this.Name;}}
然后将扩展器的名称绑定到此,
<Expander Name="{Binding ExpanderName}" Expanded="Expander_PersonDetails">
然后可以通过从“sender.name”中恢复来访问在事件处理程序中扩展的人的姓名。编译器说不能绑定 UIcontrol 元素的“名称”。为什么?
提前致谢!