private void MenuItem_AddRoot(object sender, RoutedEventArgs e) { var cvm = new ComponentViewModel(); var form = new ComponentForm { DataContext = cvm, Owner = this }; var result = form.ShowDialog(); if (!result.HasValue) { return; } if (!result.Value) { return; } if (cvm.Product == null) { return; } _viewModel.Products.Add(cvm.Product); CollectionViewSource.GetDefaultView(ProductsTreeView.ItemsSource).Refresh(); }
private void MenuItem_Add(object sender, RoutedEventArgs e) { // получить Id выьранного элемента, запустить форму с этим парамметром if (_selectProduct == null) { return; } var cvm = new ComponentViewModel(_selectProduct, true); var form = new ComponentForm(_selectProduct, true) { DataContext = cvm, Owner = this }; var result = form.ShowDialog(); if (!result.HasValue) { return; } if (!result.Value) { return; } _selectProduct.ProductCollection.Add(cvm.Product); CollectionViewSource.GetDefaultView(ProductsTreeView.ItemsSource).Refresh(); }
private async void Button_Ok(object sender, RoutedEventArgs e) { if (string.IsNullOrWhiteSpace(TbDes.Text)) { LabelMessage.Content = "Введите обозначение"; return; } if (!int.TryParse(TbQ.Text, out var result)) { LabelMessage.Content = "Введите число в строку колличество"; return; } var designation = TbDes.Text.Trim(); var name = TbName.Text.Trim(); _viewModel = DataContext as ComponentViewModel; if (_isRename) { if (_viewModel != null) { await _viewModel.Rename(designation, name); } } else { if (_viewModel != null) { var res = await _viewModel.Create(designation, name, result); if (res != string.Empty) { // выводим сообщение (автоматом так как есть биндинг) и возвращаемся к вводу return; } } } DialogResult = true; Close(); }