static void BindAppBar(DependencyObject view) { var page = view as PhoneApplicationPage; if (page == null || page.ApplicationBar == null) { return; } var triggers = Interaction.GetTriggers(view); foreach (var item in page.ApplicationBar.Buttons) { var button = item as IAppBarActionMessage; if (button == null || string.IsNullOrEmpty(button.Message)) { continue; } var parsedTrigger = Parser.Parse(view, button.Message).First(); var trigger = new AppBarItemTrigger(button); var actionMessages = parsedTrigger.Actions.OfType <ActionMessage>().ToList(); actionMessages.Apply(x => { x.applicationBarSource = button; parsedTrigger.Actions.Remove(x); trigger.Actions.Add(x); }); triggers.Add(trigger); } foreach (var item in page.ApplicationBar.MenuItems) { var menuItem = item as IAppBarActionMessage; if (menuItem == null || string.IsNullOrEmpty(menuItem.Message)) { continue; } var parsedTrigger = Parser.Parse(view, menuItem.Message).First(); var trigger = new AppBarItemTrigger(menuItem); var actionMessages = parsedTrigger.Actions.OfType <ActionMessage>().ToList(); actionMessages.Apply(x => { x.applicationBarSource = menuItem; parsedTrigger.Actions.Remove(x); trigger.Actions.Add(x); }); triggers.Add(trigger); } }
static void BindAppBar(DependencyObject view) { var page = view as PhoneApplicationPage; if (page == null || page.ApplicationBar == null) { return; } var triggers = Interaction.GetTriggers(view); foreach(var item in page.ApplicationBar.Buttons) { var button = item as IAppBarActionMessage; if (button == null || string.IsNullOrEmpty(button.Message)) { continue; } var parsedTrigger = Parser.Parse(view, button.Message).First(); var trigger = new AppBarItemTrigger(button); var actionMessages = parsedTrigger.Actions.OfType<ActionMessage>().ToList(); actionMessages.Apply(x => { x.applicationBarSource = button; parsedTrigger.Actions.Remove(x); trigger.Actions.Add(x); }); triggers.Add(trigger); } foreach (var item in page.ApplicationBar.MenuItems) { var menuItem = item as IAppBarActionMessage; if (menuItem == null || string.IsNullOrEmpty(menuItem.Message)) { continue; } var parsedTrigger = Parser.Parse(view, menuItem.Message).First(); var trigger = new AppBarItemTrigger(menuItem); var actionMessages = parsedTrigger.Actions.OfType<ActionMessage>().ToList(); actionMessages.Apply(x => { x.applicationBarSource = menuItem; parsedTrigger.Actions.Remove(x); trigger.Actions.Add(x); }); triggers.Add(trigger); } }