C#从BindingSource扩展方法中获取父控件(UserControl或Form)

时间:2012-07-25 14:52:08

标签: c#-4.0 dynamic controls parent bindingsource

我正在为.net Extension对象创建BindingSource方法。目前,该方法需要传入Control(此Control是“主要”Control,通常为UserControlForm

我想如何,不必通过这个“父母”Control。有没有办法找到BindingSourceControl?我知道有一个Container,但这对我没有帮助,或者至少我认为没有。

目前您调用此方法如下(C#UserControl):

//'new Object()' would be the data source
BindingSourceControlName.ExtMethodName(This, new Object());

我想从Control动态获取父BindingSource,以便我可以调用下面的方法(C#UserControl):

//'new Object()' would be the data source
BindingSourceControlName.ExtMethodName(new Object());

这是否可能,也许使用反射?谢谢你的阅读!

1 个答案:

答案 0 :(得分:1)

BindingSource没有“父级”控件。实际上,BindingSource并不像任何控件那样绑定任何东西。它是数据源,用于数据绑定。它可以被许多目标绑定到BindingSource绑定的内容在Binding对象中定义,该对象包含在绑定控件的DataBindings属性中。

即。你正朝错误的方向看。您可以找到特定控件的数据绑定,但无法从BindingSource中找到该信息。

也许如果你描述了你想要做的事情,有人可以提供一些细节。