/// <summary> /// Abre la ventana detalle en modo "detalle" o "edición" dependiendo de sus permisos /// </summary> /// <history> /// [emoguel] created 30/07/2016 /// </history> private void Cell_DoubleClick(object sender, RoutedEventArgs e) { frmSaleTypeCategoryDetail frmSaleTypeCategory = new frmSaleTypeCategoryDetail(); frmSaleTypeCategory.Owner = this; frmSaleTypeCategory.enumMode = EnumMode.Edit; SaleTypeCategory saleTypeCategory = dgrSaleTypesCategories.SelectedItem as SaleTypeCategory; frmSaleTypeCategory.oldSaleTypeCategory = saleTypeCategory; if (frmSaleTypeCategory.ShowDialog() == true) { List <SaleTypeCategory> lstSaleTypes = dgrSaleTypesCategories.ItemsSource as List <SaleTypeCategory>; int nIndex = 0; if (ValidateFilter(frmSaleTypeCategory.saleTypeCategory)) { ObjectHelper.CopyProperties(saleTypeCategory, frmSaleTypeCategory.saleTypeCategory); //Actualizamos los datos lstSaleTypes.Sort((x, y) => string.Compare(x.stcN, y.stcN)); //Ordenamos la lista nIndex = lstSaleTypes.IndexOf(saleTypeCategory); //Buscamos la posición } else { lstSaleTypes.Remove(saleTypeCategory); } dgrSaleTypesCategories.Items.Refresh(); //Actualizamos la vista GridHelper.SelectRow(dgrSaleTypesCategories, nIndex); //Seleccionamos el registro StatusBarReg.Content = "Categories (" + lstSaleTypes.Count + ")"; //Actualizamos el contador } }
/// <summary> /// Abre la ventana detalle en modo edición /// </summary> /// <history> /// [emoguel] created 30/07/2016 /// </history> private void btnAdd_Click(object sender, RoutedEventArgs e) { frmSaleTypeCategoryDetail frmSaleTypeCategory = new frmSaleTypeCategoryDetail(); frmSaleTypeCategory.Owner = this; frmSaleTypeCategory.enumMode = EnumMode.Add; if (frmSaleTypeCategory.ShowDialog() == true) { if (ValidateFilter(frmSaleTypeCategory.saleTypeCategory))//Validamos el filtro { List <SaleTypeCategory> lstSaleTypeCategories = dgrSaleTypesCategories.ItemsSource as List <SaleTypeCategory>; lstSaleTypeCategories.Add(frmSaleTypeCategory.saleTypeCategory); //Agregamos el registro a la lista int nIndex = lstSaleTypeCategories.IndexOf(frmSaleTypeCategory.saleTypeCategory); //Buscamos la posición del registro dgrSaleTypesCategories.Items.Refresh(); //Actualizamos la vista GridHelper.SelectRow(dgrSaleTypesCategories, nIndex); //Seleccionamos el registro StatusBarReg.Content = "Categories (" + lstSaleTypeCategories.Count + ")"; //Actualizamos el contador } } }