Пример #1
0
        /// <summary>
        /// Llena el grid de Teams Log
        /// </summary>
        /// <param name="teamLog">Objeto a selecionar</param>
        /// <history>
        /// [emoguel] created 26/04/2016
        /// </history>
        private async void LoadTeamsLog(TeamLog teamLog = null)
        {
            try
            {
                status.Visibility = Visibility.Visible;
                int nIndex = 0;
                var teams  = await BRTeamsLog.GetTeamsLog(_teamLogFilter, _blnDate);

                List <object> lstTeamsLog = teams.ToList();
                dgrTeamsLog.ItemsSource = lstTeamsLog;
                if (lstTeamsLog.Count() > 0)
                {
                    if (teamLog != null)
                    {
                        dynamic dTeamLog = lstTeamsLog.Where(item => Convert.ToUInt32(item.GetType().GetProperty("tlID").GetValue(item, null)) == teamLog.tlID).FirstOrDefault();
                        nIndex = lstTeamsLog.IndexOf(dTeamLog);
                    }
                    GridHelper.SelectRow(dgrTeamsLog, nIndex);
                    btnDel.IsEnabled = _blnDel;
                }
                else
                {
                    btnDel.IsEnabled = false;
                }
                StatusBarReg.Content = lstTeamsLog.Count() + " Teams Log.";
                status.Visibility    = Visibility.Collapsed;
            }
            catch (Exception ex)
            {
                UIHelper.ShowMessage(ex);
            }
        }
Пример #2
0
        /// <summary>
        /// Abre la ventana detalle en modo Add
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        /// <history>
        /// [emoguel] created 27/04/2016
        /// </history>
        private async void btnAdd_Click(object sender, RoutedEventArgs e)
        {
            frmTeamLogDetail frmTeamLogDetail = new frmTeamLogDetail();

            frmTeamLogDetail.Owner    = this;
            frmTeamLogDetail.enumMode = EnumMode.Add;
            if (frmTeamLogDetail.ShowDialog() == true)
            {
                TeamLog teamLog = frmTeamLogDetail.teamLog;
                if (ValidateFilter(teamLog))//Validamos que cumpla con los filtros actuales
                {
                    var team = await BRTeamsLog.GetTeamsLog(teamLog);

                    object        dTeamLog    = team.FirstOrDefault();                                                                                                                                          //Obtenemos el registro nuevo
                    List <object> lstTeamsLog = (List <object>)dgrTeamsLog.ItemsSource;
                    lstTeamsLog.Add(dTeamLog);                                                                                                                                                                  //Agregamos el registro
                    lstTeamsLog.Sort((x, y) => DateTime.Compare(Convert.ToDateTime(y.GetType().GetProperty("tlDT").GetValue(y, null)), Convert.ToDateTime(x.GetType().GetProperty("tlDT").GetValue(x, null)))); //Reordenamos la lista
                    int nIndex = lstTeamsLog.IndexOf(dTeamLog);                                                                                                                                                 //Obtenemos la posición del registro
                    dgrTeamsLog.Items.Refresh();                                                                                                                                                                //Actualizamos la vista
                    GridHelper.SelectRow(dgrTeamsLog, nIndex);                                                                                                                                                  //Seleccionamos el registro
                    StatusBarReg.Content = lstTeamsLog.Count + " Teams Log.";                                                                                                                                   //Actualizamos el contador
                }
            }
        }