private void btnEdit_Click(object sender, RoutedEventArgs e) { var vm = (sender as HyperlinkButton).DataContext as ProductDepartmentCategoryVM; vm.ProductDomainSysNo = this.VM.SysNo; //DeepClone var clonedVM = Newegg.Oversea.Silverlight.Utilities.UtilityHelper.DeepClone <ProductDepartmentCategoryVM>(vm); UCProductDepartmentCategory uc = new UCProductDepartmentCategory(clonedVM); IDialog dialog = CPApplication.Current.CurrentPage.Context.Window.ShowDialog("修改分类信息", uc, (obj, args) => { if (args.DialogResult == DialogResultType.OK) { var category = args.Data as ProductDepartmentCategoryVM; var origin = this.VM.DepartmentCategoryList.FirstOrDefault(p => p.SysNo == category.SysNo); if (origin != null) { int index = this.VM.DepartmentCategoryList.IndexOf(origin); this.VM.DepartmentCategoryList.RemoveAt(index); this.VM.DepartmentCategoryList.Insert(index, category); } else { this.VM.DepartmentCategoryList.Add(category); } } }); uc.Dialog = dialog; }
private void btnAddCategory_Click(object sender, RoutedEventArgs e) { if (!this.VM.SysNo.HasValue) { CPApplication.Current.CurrentPage.Context.Window.Alert("必须保存ProductDomain信息后才能添加分类!", MessageType.Warning); return; } ProductDepartmentCategoryVM vm = new ProductDepartmentCategoryVM(); vm.ProductDomainSysNo = this.VM.SysNo; UCProductDepartmentCategory uc = new UCProductDepartmentCategory(vm); IDialog dialog = CPApplication.Current.CurrentPage.Context.Window.ShowDialog("添加分类信息", uc, (obj, args) => { if (args.DialogResult == DialogResultType.OK) { this.VM.DepartmentCategoryList.Add(args.Data as ProductDepartmentCategoryVM); } }); uc.Dialog = dialog; }