Ejemplo n.º 1
0
        private void FormatearGrid()
        {
            try
            {
                List <GdColumnasD> ListaInicial = new List <GdColumnasD>();
                // Comprobamos si el usuario tiene registros guardados en la tabla ColumnaC, en caso de que no los guardamos
                GendocsModeloDatos.models.GenDocsContext db = new GendocsModeloDatos.models.GenDocsContext();
                if (G3.DimeIdColumnaC(G3.IdEmpleadoFML_Logged, this.dgvContactos.Name) == 0)
                {
                    GdColumnasC colC = new GdColumnasC
                    {
                        ListName      = this.dgvContactos.Name,
                        IdEmpleadoFMl = (int)G3.IdEmpleadoFML_Logged
                    };

                    db.GdColumnasC.Add(colC);
                    db.SaveChanges();

                    // Se carga en una lista una configuracion general para la primera vez que el usuario accede al grid
                    ListaInicial = CargarConfiguarcionIncial();

                    foreach (GdColumnasD item in ListaInicial)
                    {
                        GdColumnasD colD = new GdColumnasD
                        {
                            IdColumnaC = item.IdColumnaC,
                            NumCol     = item.NumCol,
                            NameField  = item.NameField,
                            Ancho      = item.Ancho,
                            OrderBy    = item.OrderBy,
                            Visible    = item.Visible
                        };

                        db.GdColumnasD.Add(colD);
                        db.SaveChanges();
                    }

                    //Ocultar una columna de un datagridview
                    this.dgvContactos.Columns["IdEmpleado"].Visible = false;
                    this.dgvContactos.Columns["Etiquetas"].Visible  = false;

                    ////Modificar el ancho de una columna
                    this.dgvContactos.Columns["Empleado"].Width      = 350;
                    this.dgvContactos.Columns["Cliente"].Width       = 200;
                    this.dgvContactos.Columns["Cargo"].Width         = 400;
                    this.dgvContactos.Columns["Telefono"].Width      = 500;
                    this.dgvContactos.Columns["Telefono"].HeaderText = "Teléfono";
                    this.dgvContactos.Columns["Email"].Width         = 450;
                }
                else
                {
                    var lstFiltro = (from a in db.GdColumnasD
                                     where a.IdColumnaC == G3.DimeIdColumnaC((int)G3.IdEmpleadoFML_Logged, this.dgvContactos.Name)
                                     select a).ToList();

                    if (lstFiltro.Count() != 0)
                    {
                        foreach (var item in lstFiltro)
                        {
                            this.dgvContactos.Columns[item.NameField].Visible = item.Visible;
                            if (Convert.ToInt32(item.Ancho) > 0)
                            {
                                this.dgvContactos.Columns[item.NameField].Width = Convert.ToInt32(item.Ancho);
                            }
                            else
                            {
                                this.dgvContactos.Columns[item.NameField].Visible = false;
                            }
                        }
                    }
                }
                //Alinear las columnas
                dgvContactos.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
                dgvContactos.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
                //dgvProyectos.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
            }
            catch (Exception ex)
            {
                _ = ex.Message;
            }
        }
Ejemplo n.º 2
0
        private void FormatearGrid()
        {
            try
            {
                List <GdColumnasD> ListaInicial = new List <GdColumnasD>();
                // Comprobamos si el usuario tiene registros guardados en la tabla ColumnaC, en caso de que no los guardamos
                GendocsModeloDatos.models.GenDocsContext db = new GendocsModeloDatos.models.GenDocsContext();
                if (G3.DimeIdColumnaC(G3.IdEmpleadoFML_Logged, this.dgvProyectos.Name) == 0)
                {
                    GdColumnasC colC = new GdColumnasC
                    {
                        ListName      = this.dgvProyectos.Name,
                        IdEmpleadoFMl = (int)G3.IdEmpleadoFML_Logged
                    };

                    db.GdColumnasC.Add(colC);
                    db.SaveChanges();

                    // Se carga en una lista una configuracion general para la primera vez que el usuario accede al grid
                    ListaInicial = CargarConfiguarcionIncial();

                    foreach (GdColumnasD item in ListaInicial)
                    {
                        GdColumnasD colD = new GdColumnasD
                        {
                            IdColumnaC = item.IdColumnaC,
                            NumCol     = item.NumCol,
                            NameField  = item.NameField,
                            Ancho      = item.Ancho,
                            OrderBy    = item.OrderBy,
                            Visible    = item.Visible
                        };

                        db.GdColumnasD.Add(colD);
                        db.SaveChanges();
                    }

                    //Y se le asigna la configuración inicial del DataGridView
                    this.dgvProyectos.Columns["IdProyecto"].Visible       = false;
                    this.dgvProyectos.Columns["EmailResponsable"].Visible = false;


                    //DataGridViewImageColumn columna = new DataGridViewImageColumn();
                    //columna.Name = "Imagen";
                    //dgvProyectos.Columns.Add(columna);
                    //dgvProyectos.Rows[0].Cells["Imagen"].Value = Image.FromFile(@"C:\Users\Alex Mota\source\repos\GendocsCORE\GendocsForms\Resources\fml_ingenieria_logo_194x89");

                    //Modificar el ancho de una columna
                    this.dgvProyectos.Columns["CodigoProyecto"].Width = 145;
                    //this.dgvProyectos.Columns["CodigoProyecto"].c = 145;
                    this.dgvProyectos.Columns["Alias"].Width            = 235;
                    this.dgvProyectos.Columns["TerminoMunicipal"].Width = 250;
                    this.dgvProyectos.Columns["Gestor"].Width           = 275;
                    this.dgvProyectos.Columns["Responsable"].Width      = 225;
                    this.dgvProyectos.Columns["ProyectoEstado"].Width   = 210;
                    this.dgvProyectos.Columns["Provincia"].Width        = 120;
                    this.dgvProyectos.Columns["TipoProyecto"].Width     = 100;
                }
                else
                {
                    var lstFiltro = (from a in db.GdColumnasD
                                     where a.IdColumnaC == G3.DimeIdColumnaC((int)G3.IdEmpleadoFML_Logged, this.dgvProyectos.Name)
                                     select a).ToList();

                    if (lstFiltro.Count() != 0)
                    {
                        foreach (var item in lstFiltro)
                        {
                            if (item.NameField == "IdProyectoEstado")
                            {
                                this.dgvProyectos.Columns["ProyectoEstado"].Visible = item.Visible;
                                this.dgvProyectos.Columns["ProyectoEstado"].Width   = Convert.ToInt32(item.Ancho);
                            }
                            else if (item.NameField == "Provincia")
                            {
                                this.dgvProyectos.Columns["Provincia"].Visible = item.Visible;
                                this.dgvProyectos.Columns["Provincia"].Width   = Convert.ToInt32(item.Ancho);
                            }
                            else
                            {
                                this.dgvProyectos.Columns[item.NameField].Visible = item.Visible;
                                if (Convert.ToInt32(item.Ancho) > 0)
                                {
                                    this.dgvProyectos.Columns[item.NameField].Width = Convert.ToInt32(item.Ancho);
                                }
                                else
                                {
                                    this.dgvProyectos.Columns[item.NameField].Visible = false;
                                }
                            }
                        }
                    }
                }

                this.dgvProyectos.Columns["CarpetaBase"].Visible = false;

                //Alinear las columnas
                dgvProyectos.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
                dgvProyectos.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
                //dgvProyectos.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
            }

            catch (Exception ex)
            {
                _ = ex.Message;
            }
        }