通过linq查找子控件

发布于 2024-11-09 18:51:23 字数 422 浏览 2 评论 0原文

这是查找功能区控件的代码

bool found = testRibbon.CommandTabs.Cast<RibbonTab>().Any(t => t.name == tab.Name);

,现在我如何通过名称找到作为 RibbonTab 成员的 RadRibbonBarGroup

场景如下: 我有一个功能区控件,我从模块填充选项卡 在选项卡内我添加 RadRibbonBarGroup 在 RadRibbonBarGroup 内我添加 RibbonButtons 现在为了防止重复,我需要检查选项卡是否存在并且 ribonbargroup 是否存在,并且按钮是否跳过该选项卡和栏组,否则添加按钮。选项卡和栏组也应该如此。 这是实现这种情况的最快方法 我可以通过 linq 来完成它还是应该为每个女巫迭代是最好的解决方案。

this is the code to find ribbon control

bool found = testRibbon.CommandTabs.Cast<RibbonTab>().Any(t => t.name == tab.Name);

now how can i find by name a RadRibbonBarGroup that is member of RibbonTab

The scenario is like this:
I have a ribbon control and i populate the tabs from modules
inside tabs i add RadRibbonBarGroup and inside RadRibbonBarGroup i add RibbonButtons
now to prevent duplicates i need to check if the tab exists and the ribonbargroup exist and has the button skip that tab and bargroup else add the button.. same should be for the tabs and bargroups.
That is the fastest way to achive this scenario
Can i do it via linq or should i iterate with for each witch is the best solution.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

⊕婉儿 2024-11-16 18:51:23
testRibbon.CommandTabs.Cast<RibbonTab>().Where(t => t.name == tab.Name)
                      .SelectMany(x => x.Groups.Where(g => g.Name == groupName));
testRibbon.CommandTabs.Cast<RibbonTab>().Where(t => t.name == tab.Name)
                      .SelectMany(x => x.Groups.Where(g => g.Name == groupName));
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文