public void ExecuteOnAdd(ObservableCollection <AppearListViewItemModel> dataList) { CommonLightBox dialog = new CommonLightBox(); TagsSelectorView selectorView = new TagsSelectorView(); var tagSelectorViewModel = new TagSelectorViewModel(); SetSelectingTags(tagSelectorViewModel.SelectingTags); selectorView.SetModel(tagSelectorViewModel); dialog.Owner = Application.Current.MainWindow; dialog.BindUIElement(selectorView); dialog.LightBoxKind = CommonLightBox.CommonLightBoxKind.SaveCancel; dialog.IsStretchable = false; selectorView.Height = Application.Current.MainWindow.ActualHeight - 80; selectorView.Width = Application.Current.MainWindow.ActualWidth - 80; selectorView.DataContext = tagSelectorViewModel; if (ShowDialogManager.ShowDialog(dialog) == true) { tagSelectorViewModel.UpdateModelsComposite(); _stickable.SetTagIds(GetSelectingTagIds(tagSelectorViewModel.SelectingTags)); dataList.Clear(); var list = TagToAppearListViewModelConverter.ToAppearListViewItemModel(_stickable.GetTagIds(), _tagManager); foreach (var newItemModel in list) { dataList.Add(newItemModel); } } }
private void GenerateTagPanel() { if (SelectingModel == null) { return; } _view.TagDeletableStackPanel.NoItemMessage = "ここには貼り付けたタグが表示されます"; _view.TagDeletableStackPanel.DoNotShowAddButtonIfCountZero = false; _view.TagDeletableStackPanel.DoShowNoItemErrorMessageIfCountZero = false; _view.TagDeletableStackPanel.DataList = TagToAppearListViewModelConverter.ToAppearListViewItemModel(SelectingModel.Tags, ModelsComposite.TagManager); _view.TagDeletableStackPanel.AddButtonStrategy = new TagStickerAddButtonStrategy(SelectingModel, ModelsComposite.TagManager); _view.TagDeletableStackPanel.OnModelIsAppearedChangedEvent += TagDeletableStackPanel_OnModelIsAppearedChangedEvent; _view.TagDeletableStackPanel.Initialize(); }