我刚刚开始使用WPF的数据绑定,所以请原谅这个问题的基本性质。
我有一个用户控件正在接收自定义事件,其中一个事件参数是我想要绑定到此用户控件中的控件的对象。
我有一些绑定到控件(如组合框)的示例,然后将网格上的datacontext设置为组合框的选定项目,然后将控件绑定到它。我有兴趣在这个用户控件中做类似的事情,但我不知道将对象绑定到事件的那个。
欢迎任何建议。
谢谢。
答案 0 :(得分:1)
如果您的事件处理程序位于UserControl的代码隐藏中,您可以编写如下内容:
DataContext = args.ObjectIWantToBindTo;
然后在你的XAML中你可以编写正常的绑定,它们将绑定到对象的属性(例如,如果对象具有属性“Foo”,你将在XAML中写入“{Binding Foo}”)。如果您不想将整个用户控件绑定到对象,而只想将XAML中的一个元素绑定,则只需设置该元素的DataContext即可。例如,如果你有:
<Grid Name="theGrid">...
你会写:
theGrid.DataContext = args.ObjectIWantToBindTo;
然后在XAML中你可以说:
<Grid Name="theGrid" Width="{Binding GridWidth}">...
你的event args对象有一个“GridWidth”属性。