【问题标题】:Get a usercontrol's child control by name in C#在 C# 中按名称获取用户控件的子控件
【发布时间】:2014-12-03 10:16:26
【问题描述】:

我有一个包含一些ComboBoxes 的用户控件。我已将它们的 Modifiers 属性设置为 Protected Internal,以便我可以在主窗体的代码中访问它们。

我正在尝试通过字符串获取他们的名字。我试过这个

ComboBox cmb = (ComboBox )ucMyUserControl.Controls.Find("cmb" + restOfTheName, false).FirstOrDefault();

正如answer 所建议的那样。但它返回null

我怎样才能让它工作?

【问题讨论】:

  • 检查我的解决方案并告诉我这是否有帮助。

标签: c# user-controls


【解决方案1】:
ComboBox cmb = (ComboBox)ucMyUserControl.Controls.Find("cmb" + restOfTheName, 
                                                   true).FirstOrDefault();

如果您的ID 正确,这将返回您的控制权。 ComboBox 可以嵌套在用户控件的其他控件中。第二个参数是searchAllChilds标志,因为这个参数应该是true才能在UserControl中的所有控件中搜索。

【讨论】:

  • 我没有想到的简单解决方案!谢谢!
猜你喜欢
  • 2013-07-11
  • 2010-12-04
  • 2012-02-17
  • 1970-01-01
  • 1970-01-01
  • 2013-02-22
  • 2018-01-31
相关资源
最近更新 更多