public NavigationBuilder Add(LocalizedString caption, string position, Action <NavigationItemBuilder> itemBuilder, IEnumerable <string> classes = null) { var childBuilder = new NavigationItemBuilder(); childBuilder.Caption(caption); childBuilder.Position(position); itemBuilder(childBuilder); Contained.AddRange(childBuilder.Build()); if (classes != null) { foreach (var className in classes) { childBuilder.AddClass(className); } } return(this); }
public async Task <NavigationBuilder> AddAsync(LocalizedString caption, string position, Func <NavigationItemBuilder, Task> itemBuilder, IEnumerable <string> classes = null, int priority = 0) { var childBuilder = new NavigationItemBuilder(); childBuilder.Caption(caption); childBuilder.Position(position); childBuilder.Priority(priority); await itemBuilder(childBuilder); Contained.AddRange(childBuilder.Build()); if (classes != null) { foreach (var className in classes) { childBuilder.AddClass(className); } } return(this); }