我有一个对象结构:
MainObject
Object1
Property1
Object2
Property1
我需要将控件绑定到Object1的Property1。
应该是吗?
myBinding.Source = MainObject;
myBinding.Path = new PropertyPath("Object1.Property1");
txt.SetBinding(TextBox.TextProperty, binding);
要么
myBinding.Source = MainObject.Object1;
myBinding.Path = new PropertyPath("Property1");
txt.SetBinding(TextBox.TextProperty, binding);
如果答案是第二个选项,有没有办法将对象的名称作为参数传递而不是创建字典? SomeFunction(字符串objectname)。我知道你不能直接这样做但是因为Object1是MainObject的属性,我可以通过将字符串“Object1”传递给某个函数来实现它吗?
我能够用第一个选项做我需要的东西。第二个工作,如果我直接键入对象名称,但我找不到一种方法将对象名称作为字符串传递,因为我可以在第一个选项中。我想这可以通过反思完成,但我不确定正确的方法。