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; } }
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; } }