【发布时间】:2010-12-10 02:33:00
【问题描述】:
我是 WPF 数据绑定的新手。
我想绑定到以下方法调用的结果的表单上有一个 ListBox:
RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32)
.OpenSubKey(@"SOFTWARE\Vendor\Product\Systems").GetSubKeyNames();
目前我正在运行时通过在 Window_Loaded() 事件处理程序中分配 ListBox.ItemsSource = (method); 来执行此操作。但这意味着在表单编辑器中查看控件配置时,控件的源数据并不明显。
有没有办法在 XAML 中配置此绑定,使其在表单编辑器中可见,从而使代码的行为更易于理解?
MSDN 文档中的大多数示例将控件绑定到静态资源,例如内联 XAML 资源。我注意到有一个ObjectDataProvider 类提供“[...] 绑定到方法结果的能力”。但是,我发现 ObjectDataProvider 文档中的示例非常令人困惑。对于这是否是执行此绑定的正确方法,如果是,在声明 ObjectDataProvider 时使用什么语法,我将不胜感激。
【问题讨论】: