Picacodigos
« Nueva Sección
|
Mas Reciente
|
Introducir y recuperar imágenes en Micro... »
DataGrid de sólo lectura en Windows Forms
Published 144 weeks, 1 day ago
Mon
Apr
03
2006
Las DataGrid en Windows Forms permiten al usuario, por defecto, editar los valores que muestran e incluso crear registros nuevos.
¿Y si queremos cargar una rejilla que sólo muestre datos, sin posibilidad de editarlos o de añadir nuevos datos?
Para ello, una de las cosas que podemos hacer es modificar las propiedades del
DefaultView
de la tabla con la que vamos a alimentar de datos a la rejilla. Por ejemplo, pongamos que tenemos un DataTable
dtDatos
que va a ser el DataSource de la rejilla. Si modificamos las propiedades
AllowDelete
,
AllowEdit
y
AllowNew
de la vista por defecto de la tabla origen de datos, tal que así:
dtDatos.DefaultView.AllowDelete
= false;
dtDatos.DefaultView.AllowEdit
= false;
dtDatos.DefaultView.AllowNew
= false;
grdDatos.DataSource
= this
.dtDatos
;
Colorized by:
CarlosAg.CodeColorizer
la rejilla
grdDatos
no permitirá al usuario que modifique, borre o añada nuevos registros.
Por otro lado, si lo que queremos es que se seleccione la fila entera de la rejilla al clickar en cualquiera de sus celdas, implementamos el siguiente código en el evento
CurrentCellChanged
de la rejilla, que se dispara al cambiar de celda seleccionada.
private void
grdDatos_CurrentCellChanged(
object
sender, EventArgs e)
{
grdDatos.Select(grdDatos.CurrentRowIndex)
;
}
Colorized by:
CarlosAg.CodeColorizer
Sencillamente, lo que hacemos es decirle a la rejilla que seleccione toda la fila, sabiendo qué fila es la que tiene que seleccionar gracias a la propiedad
CurrentRowIndex
.
Categorías:
.NET
|
Artículos
|
Trucos
|
Comments [1]
Wednesday, August 09, 2006 4:55:25 PM (Romance Daylight Time, UTC+02:00)
Buenos dias amigo, este ejemplo es muy bueno:
dtDatos.DefaultView.AllowDelete = false;
dtDatos.DefaultView.AllowEdit = false;
dtDatos.DefaultView.AllowNew = false;
grdDatos.DataSource = this.dtDatos;
....pero que tal si quisiera desactivar una celda o una columna en especifico.
¿Cual seria la manera mas idonea?
Muchas Gracias.
Andres
andres gonzalez
Comments are closed.
Buscar
Estadísticas
Total Posts: 112
This Year: 0
This Month: 0
This Week: 0
Comments: 328
Comentarios Recientes
RE: Microsoft Techdays y...
by Erick Alejan...
RE: Microsoft Techdays y...
by Venkman
RE: Microsoft Techdays y...
by Jesús
RE: Microsoft Techdays y...
by espinete
RE: Microsoft Techdays y...
by Pavleras
Software
Peeker
Acerca de...
Curriculum
Resume
Suscripcion
Suscribirse por correo
Categorias
.NET
Artículos
Blog
Eventos
Gadgets
Hardware
Herramientas
Opinión
Personal
ReSharper
Trucos
Ubuntu
Web
Archivo
January, 2008 (3)
December, 2007 (7)
November, 2007 (13)
October, 2007 (6)
September, 2007 (10)
August, 2007 (1)
July, 2007 (2)
June, 2007 (4)
May, 2007 (3)
March, 2007 (3)
February, 2007 (5)
January, 2007 (5)
December, 2006 (3)
November, 2006 (5)
September, 2006 (2)
August, 2006 (4)
July, 2006 (7)
June, 2006 (3)
May, 2006 (4)
April, 2006 (5)
March, 2006 (5)
February, 2006 (4)
January, 2006 (3)
Los blogs que leo
.Avery Blog
47 hats
Coding Horror
El lado del mal
Haacked
Jon Galloway
NET slave
Rob Conery
secretGeek
The daily WTF
The old new thing
Thinking in .NET
Velocidad de Escape
Contacto
Microblogging
Login
Sign In
Herramientas
Addicted to
The best C# & VB.NET refactoring plugin for Visual Studio 2005
Powered by
newtelligence dasBlog 1.9.7174.0
Tema basado en
Dandelion
, de Tim Sherrill