public static NsRibbon UtworzRibbonBar(List <Action> akcje) { //generuje ribbona //sprawdzam czy jest menu ribbon var akcjeRibbon = akcje.Where(o => o.Position == EnumActionPosition.Ribbon); if (akcjeRibbon.Any()) { //mamy menu ribon var ribonBar = new NsRibbon(); foreach (var opisAkcji in akcjeRibbon) { var tab = ribonBar.Tabs.FirstOrDefault(r => r.Value == opisAkcji.Tab); if (tab == null) { tab = new RibbonBarTab() { Value = opisAkcji.Tab, Text = WidgetBase.GetReadableName(opisAkcji.Tab) }; ribonBar.Tabs.Add(tab); } var grupa = tab.Groups.FirstOrDefault(g => g.Value == opisAkcji.Group); if (grupa == null) { grupa = new RibbonBarGroup() { Value = opisAkcji.Group, Text = WidgetBase.GetReadableName(opisAkcji.Group) }; } tab.Groups.Add(grupa); var ribonButton = utworzRibbonAkcja(opisAkcji); grupa.Items.Add(ribonButton); } return(ribonBar); } return(null); }