コード例 #1
0
 private Task DoDeleteFileLocation(object o)
 {
     return(Task.Factory.StartNew(() =>
     {
         Parent.SyncContext.Post(c =>
         {
             FileLocations.Remove((FileLocation)o);
         }, null);
     }));
 }
コード例 #2
0
        private Task DoEditFileLocation(object o)
        {
            return(Task.Factory.StartNew(() =>
            {
                Parent.SyncContext.Post(c =>
                {
                    CustomDialog customDialog = new CustomDialog()
                    {
                        Title = "New Location"
                    };

                    var dataContext = new NewFileLocationDialogModel(obj =>
                    {
                        Parent.DialogCoordinator.HideMetroDialogAsync(Parent, customDialog);
                    },
                                                                     obj =>
                    {
                        Parent.DialogCoordinator.HideMetroDialogAsync(Parent, customDialog);
                        Parent.SyncContext.Post(d =>
                        {
                            FileLocation location = new FileLocation()
                            {
                                Name = obj.FileName,
                                Path = obj.Path
                            };
                            FileLocations.Add(location);
                            FileLocations.Remove((FileLocation)o);
                        }, null);
                    });
                    dataContext.FileName = ((FileLocation)o).Name;
                    dataContext.Path = ((FileLocation)o).Path;
                    customDialog.Content = new NewFileLocationDialog {
                        DataContext = dataContext
                    };

                    Parent.DialogCoordinator.ShowMetroDialogAsync(Parent, customDialog);
                }, null);
            }));
        }