Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: killer.egrc en 12 de Octubre 2015, 23:57

Título: Editar celda de un DataGridView Visual Basic VB.Net propiedad ReadOnly
Publicado por: killer.egrc en 12 de Octubre 2015, 23:57
Buenas

Acabo de empezar a usar el lenguaje vb.net, estoy aprendiendo y avanzando de a poco con ayuda de foros y manuales, pero ahora me topé con un problema que no consigo resolver.

Tengo tres apartados que son el de Nuevo, Editar y Buscar, en el primero tengo un gridview que he llenado con datos de varias tablas sql y guardado al final en una tabla diferente, hasta ahi no hay problema, pero ahora en el apartado Editar necesito editar solo una parte, digamos que una columna y dos celdas de otra columna.

Alguna idea de como editar esas dos unicas celdas???

Estoy programando en vb.net en conjunto con asp.net y sql server 2008

De antemano muchas gracias por la ayuda
Título: Re:Editar celda de un DataGridView Visual Basic VB.Net
Publicado por: Mastermind en 14 de Octubre 2015, 10:58
Hola

Para hacer editable una o varias celdas de un datagridview puedes hacerlo usando la propiedad ReadOnly.

Puedes hacer usando código:

- Que sean editables ciertas filas y otras no

- Que sean editables ciertas columnas y otras no

- Que sean editables ciertas celdas y otras no (esto es quizás más complicado porque tienes que marcar cada celda como editable una a una).



Ejemplo, para hacer una columna NO EDITABLE haríamos:

Código: [Seleccionar]
dataGridView1.ReadOnly =false;

foreach (DataGridViewColumn dgvc in dgSearchedResults.Columns)
                    {
                        dgvc.ReadOnly = true;
                    }

dataGridView1.Columns("ColumnName").ReadOnly = false;


Donde ColumnName es la columna que queremos que NO SEA EDITABLE, mientras que el resto sí serán editables.

Saludos :)
Título: Re:Editar celda de un DataGridView Visual Basic VB.Net propiedad ReadOnly
Publicado por: killer.egrc en 15 de Octubre 2015, 15:10
Buenas, primero que nada gracias por responder
Ahora, investigando un poco más, encontré que no es lo mismo un DataGridView que un GridView, y yo estaba equivocado, tengo que usar un GridView porque Visual Studio 2013 no me permite usar DGV, al parecer no está incluido, y el ReadOnly solo se puede usar con DGV no con GV, encontre una forma de restringir la seleccion de celdas pero esto solo lo hace al momento de seleccionarlas, cuando aparecen los campos para hacer la modificacion me permite modificar toda la fila.
Lo he pensado un poco y la solución podría ser, dejar editar todo, pero al momento de hacer el update en SQL solo hacerlo de los campos que quiero, pero igual estoy atascado con la programación, ojala me pudieran orientar un poco.

Gracias
Título: Re:Editar celda de un DataGridView Visual Basic VB.Net propiedad ReadOnly
Publicado por: Ogramar en 18 de Octubre 2015, 18:23
Hola yo utilizo Visual Studio 2013 y sí tengo DataGridView, para acceder a él tienes que estar en la vista de diseño, tener el foco sobre el formulario y mostrar el cuadro de herramientas (menú ver, cuadro de herramientas, o pulsar CTRL+ALT+X). En el cuadro de herramientas seleccionas "Datos" y dentro de las opciones de datos te aparecerá Puntero, Chart, BindingNavigator, BindingSource, DataGridView y DataSet.

Salu2
Título: Re:Editar celda de un DataGridView Visual Basic VB.Net propiedad ReadOnly
Publicado por: killer.egrc en 20 de Octubre 2015, 16:13
Hola Ogramar, tienes razón, si se encuentra DGV disponible en visual 2013, investigando un poco más averigüé que la razón de que no pueda usarlo es que estoy programando en .NET y al parecer el DGV solo esta disponible para aplicaciones de escritorio, en aplicaciones web solo puedo usar el GridView  :-\ y en cuanto a lo de editar solo algunas celdas, lo dejé por la paz, la validación la haré antes de hacer el update, gracias por sus respuestas :)