Esempio n. 1
0
        public async Task DeleteAppAsync(Guid id)
        {
            AppModel appModelFromDB = _appCollection[id];

            if (appModelFromDB == null)
            {
                throw new InvalidOperationException("应用程序不存在");
            }
            appModelFromDB.Stop();
            _appCollection.Remove(appModelFromDB);
            await _appCollection.SaveDataAsync();
        }
        private void ApplicationGrid_RemoveClick(object sender, RoutedEventArgs e)
        {
            MonitoredApp monitoredApp = ((FrameworkElement)sender).DataContext as MonitoredApp;

            AppCollection.Remove(monitoredApp);
        }
        public static void EditPrompt(EmoticonItem item = null)
        {
            item = item ?? new EmoticonItem(null, null);

            StackPanel   panel   = new StackPanel();
            PhoneTextBox TextBox = new PhoneTextBox();
            PhoneTextBox NoteBox = new PhoneTextBox();

            if (item.Text != null)
            {
                TextBox.Text = item.Text;
                NoteBox.Text = item.Note;
            }
            TextBox.Hint = AppResources.Emoticon;
            NoteBox.Hint = AppResources.Note;
            panel.Children.Add(TextBox);
            panel.Children.Add(NoteBox);

            CustomMessageBox messageBox = new CustomMessageBox()
            {
                Message              = AppResources.AddEmoticon,
                Content              = panel,
                LeftButtonContent    = AppResources.OK,
                IsLeftButtonEnabled  = true,
                RightButtonContent   = AppResources.Cancel,
                IsRightButtonEnabled = true
            };

            TextBox.TextChanged += (s, ev) =>
            {
                messageBox.IsLeftButtonEnabled = !string.IsNullOrWhiteSpace(TextBox.Text);
            };
            messageBox.Dismissed += (s, ev) =>
            {
                if (ev.Result == CustomMessageBoxResult.LeftButton)
                {
                    AppCollection <string>   favorite = App.ViewModel.Favorite;
                    Dictionary <int, string> noteMap  = App.ViewModel.NoteMap;

                    if (favorite.Contains(item.Text))
                    {
                        favorite.Remove(item.Text);
                        noteMap.Remove(item.Text.GetHashCode());
                    }
                    if (favorite.Contains(TextBox.Text))
                    {
                        favorite.Remove(TextBox.Text);
                    }
                    favorite.Add(TextBox.Text);

                    if (noteMap.ContainsKey(TextBox.Text.GetHashCode()))
                    {
                        noteMap[TextBox.Text.GetHashCode()] = NoteBox.Text;
                    }
                    else
                    {
                        noteMap.Add(TextBox.Text.GetHashCode(), NoteBox.Text);
                    }

                    App.Settings.Save();
                    App.ViewModel.FavoriteList.Rebuild();
                }
            };
            messageBox.Show();
            TextBox.Focus();
        }