Foros del Web » Programación para mayores de 30 ;) » .NET »

GridView con columna editable

Estas en el tema de GridView con columna editable en el foro de .NET en Foros del Web. Que instrucción se utiliza para poner una columna de un GridView como editable? Estoy usando visual basic net 2008...
  #1 (permalink)  
Antiguo 31/01/2014, 12:52
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Pregunta GridView con columna editable

Que instrucción se utiliza para poner una columna de un GridView como editable?

Estoy usando visual basic net 2008
  #2 (permalink)  
Antiguo 31/01/2014, 14:59
Avatar de alan_69niupi  
Fecha de Ingreso: junio-2011
Mensajes: 200
Antigüedad: 12 años, 10 meses
Puntos: 17
Respuesta: GridView con columna editable

a que te refieres con columna editable, que el texto que salga lo puedas modificar? si es asi con un dataitem y pones un textbox

Saludos!!!
  #3 (permalink)  
Antiguo 31/01/2014, 15:50
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Sonrisa Respuesta: GridView con columna editable

Cita:
Iniciado por alan_69niupi Ver Mensaje
a que te refieres con columna editable, que el texto que salga lo puedas modificar? si es asi con un dataitem y pones un textbox

Saludos!!!
Es correcto, tenga o no tenga texto la columna quiero agregarle información ¿como es eso del dataitem? ya que en modo Diseño no hallo una manera de hacer Editable la columna.
  #4 (permalink)  
Antiguo 31/01/2014, 16:13
Avatar de alan_69niupi  
Fecha de Ingreso: junio-2011
Mensajes: 200
Antigüedad: 12 años, 10 meses
Puntos: 17
Respuesta: GridView con columna editable

Perdón no es un dataitem es un itemtamplate algo así
<asp:TemplateField HeaderText="Nombre de la columna">
<ItemTemplate>
<asp:TextBox ID="txtNombre" runat="server" Width="50px" Text='<%# Eval("Nombre")%>'
></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>

agregas una columna de tipo TemplateField y dentro de este un itemtemplate la parte donde dice EVAL es si le a esta columna le agregas un valor desde un DataTable, DateSet. el textbox es para que puedes modificar el texto o numero o lo que escribas.

ahora para obtener el valor que tiene ese textbox hace esto

foreach (GridViewRow row in grvAsignaciones.Rows) {
TextBox txtNom = row.Cells[6].FindControl("txtNombre") as TextBox;
}
de esta manera dices que txtNom es un nuevo textbox con el valor que tiene el gridview en la celda 6 de cada fila, es en el caso de que modifique uno o mas valores del gridview.

espero te sirva


Saludos!!!!
  #5 (permalink)  
Antiguo 31/01/2014, 16:47
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Sonrisa Respuesta: GridView con columna editable

Estoy perdido no se como asignarle un valor a Text='<%# Eval("Nombre")%>' desde el data set
  #6 (permalink)  
Antiguo 31/01/2014, 17:25
Avatar de alan_69niupi  
Fecha de Ingreso: junio-2011
Mensajes: 200
Antigüedad: 12 años, 10 meses
Puntos: 17
Respuesta: GridView con columna editable

el eval sirve para controles de tipo ItemTemplate, como son los textbox, los label, o button entre entre otros,
para usar el eval tienes que asignar un datasouce a un gridview
por ejemplo
gridviewCliente.DataSource= dataSet;

el data set es el que contiene una columna que se llama nombre.
entonces en el diseño agregas una columna de tipo itemTemplate y agregas un textbox y al textbox le pones el valor de la columna Nombre.

por ejemplo desde el evento si llenas el gridview con un boton o desde el load
pones esto
gridview.DataSouce=DataSet;
gridView.Databind();

y asi le asignas un valor al datasouce del grid y un valor al eval de la columna


Saludos!!!!
  #7 (permalink)  
Antiguo 31/01/2014, 17:38
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Sonrisa Respuesta: GridView con columna editable

Cita:
Iniciado por alan_69niupi Ver Mensaje
el eval sirve para controles de tipo ItemTemplate, como son los textbox, los label, o button entre entre otros,
para usar el eval tienes que asignar un datasouce a un gridview
por ejemplo
gridviewCliente.DataSource= dataSet;

el data set es el que contiene una columna que se llama nombre.
entonces en el diseño agregas una columna de tipo itemTemplate y agregas un textbox y al textbox le pones el valor de la columna Nombre.

por ejemplo desde el evento si llenas el gridview con un boton o desde el load
pones esto
gridview.DataSouce=DataSet;
gridView.Databind();

y asi le asignas un valor al datasouce del grid y un valor al eval de la columna


Saludos!!!!


Le agregue esto que me decias:


<asp:TemplateField HeaderText="Descripcion">
<ItemTemplate>
<asp:TextBox ID="txtNombre" runat="server" Width="50px" >
</asp:TextBox>
</ItemTemplate>
</asp:TemplateField>


y luego en el codigo use:
Obs = GridViewMisOts.Rows(index).Cells(6).Text.ToString

y luego lo muestro en un label:

Label1.Text = "Regresaste la OT: " & OT & Obs.ToString()


pero no sale nada cuando escribo en el, a fuerza requiero usar el data set que me dices? se puede hacer como lo puse?

Gracias
  #8 (permalink)  
Antiguo 31/01/2014, 17:45
Avatar de alan_69niupi  
Fecha de Ingreso: junio-2011
Mensajes: 200
Antigüedad: 12 años, 10 meses
Puntos: 17
Respuesta: GridView con columna editable

no necesariamente un data set, requieres tener un DATASOURCE del GRIDVIEW. esto quiere decir que tiene una tabla o una lista de objetos, los cuales tienen atributos. dentro la tabla tienes una columna que se llama "Nombre" esto es el EVAL, que una columna del GRIDVIEW puede tomar el valor de una columna que este en su DATASOURCE. es para eso. si no quieres usarlo. puese hacer omitir el valor y poner el nombre del objeto siempre en el eval, pero para usar el EVAL si requieres el DATASOURCE. una vez esto puedes personalizar el GRIDVIEW y ponerle un DATABOUND a cada columna con el control BOUNDFIELD del grid view.



Saludos!!!!
  #9 (permalink)  
Antiguo 31/01/2014, 17:50
Avatar de alan_69niupi  
Fecha de Ingreso: junio-2011
Mensajes: 200
Antigüedad: 12 años, 10 meses
Puntos: 17
Respuesta: GridView con columna editable

verifica si en esta variable se esta cargando el valor
Cita:
Obs = GridViewMisOts.Rows(index).Cells(6).Text.ToString
Esto es muy importante
Cita:
TextBox lblReal = row.Cells[6].FindControl("txtNombre") as TextBox;
por si solo la celda del gridview no tiene valor, el valor esta en el textbox.
entonces para acceder al valor de textbox necesitas el findcontrol y le pones el nombre del textbox del gridview tienes que convertir el valor a un nuevo control y despues puedes extraer ese valor y asignarlo a una variable.


Saludos!!!!
  #10 (permalink)  
Antiguo 31/01/2014, 17:52
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Respuesta: GridView con columna editable

Cita:
Iniciado por alan_69niupi Ver Mensaje
verifica si en esta variable se esta cargando el valor


Esto es muy importante

por si solo la celda del gridview no tiene valor, el valor esta en el textbox.
entonces para acceder al valor de textbox necesitas el findcontrol y le pones el nombre del textbox del gridview tienes que convertir el valor a un nuevo control y despues puedes extraer ese valor y asignarlo a una variable.


Saludos!!!!

Lo probare, Muchas Gracias :)

Etiquetas: columna, editable, gridview
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:32.