public void ShowDialog(ChatTagListWindowViewModel viewModel) { var window = new ChatTagListWindow(viewModel); window.Owner = App.Current.MainWindow; window.ShowDialog(); }
public ChatTagListWindow(ChatTagListWindowViewModel viewModel) { this.DataContext = viewModel; viewModel.CloseEvent += (sender, e) => this.Close(); InitializeComponent(); }
public ChatTagListWindow(ChatTagListWindowViewModel viewModel) { this.DataContext = viewModel; viewModel.CloseEvent += (sender, e) => this.Close(); InitializeComponent(); this.MouseLeftButtonDown += (sender, e) => this.DragMove(); }
private void TabTagList() { var tags = new HashSet <Tag>(); { foreach (var profile in _messageManager.GetProfiles()) { tags.UnionWith(profile.Value.Tags); } { var chatCategoryViewModels = new List <ChatCategoryViewModel>(); chatCategoryViewModels.Add(this.TabViewModel.Value); for (int i = 0; i < chatCategoryViewModels.Count; i++) { chatCategoryViewModels.AddRange(chatCategoryViewModels[i].Categories); tags.ExceptWith(chatCategoryViewModels[i].Threads.Select(n => n.Model.Tag)); } } } if (this.TabSelectedItem.Value is ChatCategoryViewModel chatCategoryViewModel) { var viewModel = new ChatTagListWindowViewModel(tags); viewModel.Callback += (tag) => { chatCategoryViewModel.Model.ThreadInfos.Add(new ChatThreadInfo() { Tag = tag }); }; _dialogService.ShowDialog(viewModel); } }