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

como utilizar el control editcommandcolumn en un datagrid

Estas en el tema de como utilizar el control editcommandcolumn en un datagrid en el foro de .NET en Foros del Web. Hola, necesito utilizar la propiedad de edicion del control datagrid, lo estoy haciendo asi: <asp:DataGrid id="dgAvaluos" runat="server" AutoGenerateColumns="False" ><Columns> <asp:BoundColumn DataField="nu_cedula_aval" ReadOnly="True" HeaderText = "Avaluador"/> ...
  #1 (permalink)  
Antiguo 04/11/2004, 12:45
 
Fecha de Ingreso: diciembre-2003
Mensajes: 212
Antigüedad: 20 años, 5 meses
Puntos: 0
como utilizar el control editcommandcolumn en un datagrid

Hola, necesito utilizar la propiedad de edicion del control datagrid, lo estoy haciendo asi:

<asp:DataGrid id="dgAvaluos" runat="server" AutoGenerateColumns="False" ><Columns>
<asp:BoundColumn DataField="nu_cedula_aval" ReadOnly="True" HeaderText = "Avaluador"/>
<asp:BoundColumn DataField="estac" HeaderText="Estacionam."/>
<asp:BoundColumn DataField="totalxAvaluador" HeaderText="Total x Avaluador"/>
<asp:EditCommandColumn EditText="Editar" CancelText="Cancelar" UpdateText="Update" ButtonType="LinkButton">
</asp:EditCommandColumn>

nose que tengo malo, pero no me funciona , no me coloca las celdas editables.Que puede ser? Tiene algun ejemplo de como utilizar este control?
  #2 (permalink)  
Antiguo 04/11/2004, 13:42
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Te falta hacer nuevamente el Binding de tu Datagrid para cuando des click en tu link (editar).

Ejemplo:

Cita:
Private Sub DataGrid1_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs ) Handles DataGrid1.EditCommand
DataGrid1.EditItemIndex = e.Item.ItemIndex
Bind()
End Sub
Donde Bind() es tu método para llenar tu Datagrid..

Espero haya sido claro.., de todas formas en las faq´s hay varios ejemplos del datagrid..

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 04/11/2004, 13:55
 
Fecha de Ingreso: diciembre-2003
Mensajes: 212
Antigüedad: 20 años, 5 meses
Puntos: 0
gracias Rootk! Ahora si me aparecen las cajas editables, pero una pregunta el tamaño de esa cajas se puede configurar para que acepte maximo 3 caracteres por ejemplo? para que la caja sea mas pequeña o eso lo hace el control datagrid por defecto?
  #4 (permalink)  
Antiguo 04/11/2004, 15:33
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cita:
pero una pregunta el tamaño de esa cajas se puede configurar para que acepte maximo 3 caracteres
Si quieres personalizar la forma en que sale cuando le das un edit, por ejemplo en vex de textbox que sean labels, cambiar las propiedades, etc, tienes que usar ItemTemplates y c/u de ellos con su EditTemplate (si es el caso) en vez de usar BoundColums, sería algo como ésto:

Ejemplo

Cita:
<asp:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<%# Container.DataItem("estac") %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox Runat=server ID="txtUno" Text='<%# Container.DataItem("estac") %>' MaxLength=3>
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemTemplate>
<%# Container.DataItem("totalxAvaluador") %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox Runat=server ID="txtUno" Text='<%# Container.DataItem("totalxAvaluador") %>' MaxLength=3>
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemTemplate>
<asp:LinkButton Runat="server" Text="Editar" ID="btnUno" CommandName="Editar"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
Y con ello puedes acomodar tu Datagrid como más te convenga.., ya depende lo demás de ti.

Salu2
  #5 (permalink)  
Antiguo 05/11/2004, 07:32
 
Fecha de Ingreso: diciembre-2003
Mensajes: 212
Antigüedad: 20 años, 5 meses
Puntos: 0
gracias, ya lo ajuste como me dijiste y le di el formato que necesitaba.
Otra pregunta, como puedo referirme a cada textbox del data grid, para validar que el valor que introduzcan alli no sea mayor que cierta cantidad(en este caso que no sea mayor que el TotalxAvaluador). Esta validacion debe hacerse al momento de presionar el link de "Update" verdad?
Lo que no entiendo es como utilizar los controles de validacion con cada caja editable del data grid?? Se puede hacer?
Normalmente se hace asi:
<asp:rangevalidator id="RangeValidator" ControlToValidate="txtPorcAvaluos" Runat="server" ErrorMessage="Debe indicar un valor válido para el porcentaje de avaluos a auditar (entre 0 y 100%)" Display="None" MinimumValue="0" MaximumValue="100" Type="Double"></asp:rangevalidator>
y en el controlToValidate se coloca el nombre de la caja, pero como distingo las cajas del datagrid?

Espero puedan ayudarme
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 11:30.