Ver Mensaje Individual
  #6 (permalink)  
Antiguo 26/04/2010, 10:55
Avatar de gakutaru
gakutaru
 
Fecha de Ingreso: agosto-2005
Ubicación: frente a mi NtbK
Mensajes: 239
Antigüedad: 18 años, 8 meses
Puntos: 6
Respuesta: Ancho columnas Gridview

ya okas, mira, en el caso de recuperar el id mientras se recorre una serie de checkboxs, yo lo hago de una 3ra forma, que es recuperandolas de un label invisible, la primera columna se declara algo asi, creo que el id que recuperas se llama 'dato'...

Código HTML:
Ver original
  1. .....
  2.                     <Columns>
  3.                     <asp:TemplateColumn HeaderText="dato" Visible="false">
  4.                      <ItemTemplate>
  5.                      <asp:Label ID="lblDato" Text='<%# DataBinder.Eval(Container.DataItem,"dato") %>' runat="server" />
  6.                      </ItemTemplate>
  7.                      </asp:TemplateColumn>
  8.                         <asp:TemplateField>
  9.                             <ItemTemplate>
  10.                                 <asp:CheckBox ID="Selector" runat="server" />
  11.                             </ItemTemplate>
  12.                         </asp:TemplateField>
  13.                         <asp:BoundField DataField="usuario" HeaderText="usuario" ReadOnly="True"
  14.                            SortExpression="usuario">
  15.                             <FooterStyle HorizontalAlign="Center" Width="20px" Wrap="False" />
  16.                             <HeaderStyle HorizontalAlign="Center" Width="20px" Wrap="False" />
  17.                             <ItemStyle HorizontalAlign="Center" Width="20px" Wrap="False" />
  18.                         </asp:BoundField>
  19.                         <asp:BoundField DataField="hora" HeaderText="hora" ReadOnly="True"
  20.                            SortExpression="hora">
  21.                             <FooterStyle HorizontalAlign="Center" Width="20px" Wrap="False" />
  22.                             <HeaderStyle HorizontalAlign="Center" Width="20px" Wrap="False" />
  23.                             <ItemStyle HorizontalAlign="Center" Width="100px" Wrap="False" />
  24.                         </asp:BoundField>
  25.                         <asp:BoundField DataField="tipo" HeaderText="tipo" SortExpression="tipo">
  26.                             <ControlStyle Width="20px" />
  27.                             <FooterStyle Width="20px" Wrap="False" />
  28.                             <HeaderStyle Width="20px" Wrap="False" />
  29.                             <ItemStyle Width="100px" Wrap="False" />
  30.                         </asp:BoundField>
  31.                         <asp:BoundField ItemStyle-Width="1" DataField="dato" HeaderText="dato"
  32.                            SortExpression="dato" ReadOnly="true">
  33.                            
  34.                            
  35.                             <ItemStyle Width="100px" HorizontalAlign="Left" Wrap="False" />
  36.                            
  37.                            
  38.                         </asp:BoundField>
  39.                     </Columns>
  40.                     ......

don el lbl esta aqui:


<asp:TemplateColumn HeaderText="dato" Visible="false">
<ItemTemplate>
<asp:Label ID="lblDato" Text='<%# DataBinder.Eval(Container.DataItem,"dato") %>' runat="server" />
</ItemTemplate>
</asp:TemplateColumn>


y en la funcion seria algo asi: (en VB)

Código vb:
Ver original
  1. Sub ShowSelections(ByVal sender As System.Object, ByVal e As System.EventArgs)
  2.  Dim dgItem As DataGridItem
  3.  Dim chkSelected As CheckBox
  4.  Dim strid As String
  5.  For Each dgItem In ItemsGrid.Items
  6.             chkSelected = dgItem.FindControl("Selector")
  7.             If chkSelected.Checked Then
  8.                 strid = CType(dgItem.FindControl("lblDato"), Label).Text
  9.             End If
  10.   Next
  11. .....
  12. End Sub
basicamente la linea 'CType(dgItem.FindControl("lblDato"), Label).Text ' recupera el id, asi que puedes meterla a un string, o lo que necesites.