示例#1
0
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);

            string id   = string.Empty;
            string menu = string.Empty;

            if (NavigationContext.QueryString.TryGetValue("venueid", out id))
            {
                NavigationContext.QueryString.TryGetValue("menuid", out menu);

                DataContext = new VenueMenuViewModel
                {
                    Menu      = null,
                    VenueName = "MENU"
                };

                //_id = id;
                var vv = DataManager.Current.Load <Model.VenueMenu>(id,
                                                                    (done) =>
                {
                    var oneMenu = done.Menus.Where(m => m.MenuId == menu).FirstOrDefault();
                    Dispatcher.BeginInvoke(() =>
                    {
                        var dc = DataContext as VenueMenuViewModel;
                        if (dc != null)
                        {
                            dc.Menu = oneMenu;
                        }

                        dc.Menus = done;

                        // Load the venue's name as a nice-to-have now.
                        DataManager.Current.Load <Model.Venue>(id, (ok) =>
                        {
                            if (dc != null && ok != null)
                            {
                                dc.VenueName = ok.Name;
                            }
                        }, (notOk) => { });
                    });
                },
                                                                    (err) =>
                {
                    /*throw new UserIntendedException(
                     *  "We couldn't download information about the place right now, please try again in a little while.",
                     *  err);*/
                });
            }
            else
            {
                throw new InvalidOperationException("No venue ID was specified along with the view model.");
            }
        }
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);

            string id = string.Empty;
            string menu = string.Empty;
            if (NavigationContext.QueryString.TryGetValue("venueid", out id))
            {
                NavigationContext.QueryString.TryGetValue("menuid", out menu);

                DataContext = new VenueMenuViewModel
                {
                    Menu = null,
                    VenueName = "MENU"
                };

                //_id = id;
                var vv = DataManager.Current.Load<Model.VenueMenu>(id,
                    (done) =>
                    {
                        var oneMenu = done.Menus.Where(m => m.MenuId == menu).FirstOrDefault();
                        Dispatcher.BeginInvoke(() =>
                            {
                                var dc = DataContext as VenueMenuViewModel;
                                if (dc != null)
                                {
                                    dc.Menu = oneMenu;
                                }

                                dc.Menus = done;

                                // Load the venue's name as a nice-to-have now.
                                DataManager.Current.Load<Model.Venue>(id, (ok) =>
                                    {
                                        if (dc != null && ok != null)
                                        {
                                            dc.VenueName = ok.Name;
                                        }
                                    }, (notOk) => { });
                            });
                    },
                    (err) =>
                    {
                        /*throw new UserIntendedException(
                            "We couldn't download information about the place right now, please try again in a little while.",
                            err);*/
                    });
            }
            else
            {
                throw new InvalidOperationException("No venue ID was specified along with the view model.");
            }
        }