/// <summary> /// Muestra la ventana detalle en modo edit /// </summary> /// <history> /// [emoguel] 15/04/2016 Created /// </history> private void Cell_DoubleClick(object sender, RoutedEventArgs e) { ReimpresionMotive reimpresionMotive = (ReimpresionMotive)dgrReimpresionMotives.SelectedItem; frmReimpresionMotiveDetail frmReimpresionMotive = new frmReimpresionMotiveDetail(); frmReimpresionMotive.Owner = this; frmReimpresionMotive.enumMode = EnumMode.Edit; frmReimpresionMotive.oldReimpresionMotive = reimpresionMotive; if (frmReimpresionMotive.ShowDialog() == true) { int nIndex = 0; List <ReimpresionMotive> lstReimpresionMotive = (List <ReimpresionMotive>)dgrReimpresionMotives.ItemsSource; if (ValidateFilter(frmReimpresionMotive.reimpresionMotive)) //Verificamos que cumpla con los filtros actuales del grid { ObjectHelper.CopyProperties(reimpresionMotive, frmReimpresionMotive.reimpresionMotive); //Actualizamos los valores lstReimpresionMotive.Sort((x, y) => string.Compare(x.rmN, y.rmN)); //Ordenamos la lista nIndex = lstReimpresionMotive.IndexOf(reimpresionMotive); //Obtenemos el index del registro } else { lstReimpresionMotive.Remove(reimpresionMotive); //Quitamos el registro } dgrReimpresionMotives.Items.Refresh(); //Actualizamos la vista GridHelper.SelectRow(dgrReimpresionMotives, nIndex); //Seleccionamos el contador StatusBarReg.Content = lstReimpresionMotive.Count + " Reimpresion Motives."; //Actualizamos el contador } }
/// <summary> /// Abre la ventana detalle en modo Add /// </summary> /// <param name="sender"></param> /// <param name="e"></param> /// <history> /// [emoguel] created 16/04/2016 /// </history> private void btnAdd_Click(object sender, RoutedEventArgs e) { frmReimpresionMotiveDetail frmReimpresionMotive = new frmReimpresionMotiveDetail(); frmReimpresionMotive.Owner = this; frmReimpresionMotive.enumMode = EnumMode.Add; if (frmReimpresionMotive.ShowDialog() == true) { ReimpresionMotive reimpresionMotive = frmReimpresionMotive.reimpresionMotive; if (ValidateFilter(reimpresionMotive))//Verificamos si cumple con los filtros actuales { List <ReimpresionMotive> lstReimpresionMotive = (List <ReimpresionMotive>)dgrReimpresionMotives.ItemsSource; lstReimpresionMotive.Add(reimpresionMotive); //Agregamos el registro nuevo lstReimpresionMotive.Sort((x, y) => string.Compare(x.rmN, y.rmN)); //Ordenamos la lista int nIndex = lstReimpresionMotive.IndexOf(reimpresionMotive); //Obtemos la posicion del nuevo registro dgrReimpresionMotives.Items.Refresh(); //Actualizamos la vista GridHelper.SelectRow(dgrReimpresionMotives, nIndex); //Seleccionamos el registro nuevo StatusBarReg.Content = lstReimpresionMotive.Count + " Reimpresion Motives."; //Actualizamos el contador } } }