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

Grid y su evento ItemDataBound

Estas en el tema de Grid y su evento ItemDataBound en el foro de .NET en Foros del Web. Hola Foro. Veran tengo una duda con datagrids de webforms en c#. cargo un grid en una de sus columnas la tengo como HyperLinkColumn, ok ...
  #1 (permalink)  
Antiguo 13/07/2005, 15:34
Avatar de grisel  
Fecha de Ingreso: diciembre-2004
Ubicación: Mexico
Mensajes: 215
Antigüedad: 19 años, 4 meses
Puntos: 0
Grid y su evento ItemDataBound

Hola Foro.

Veran tengo una duda con datagrids de webforms en c#.

cargo un grid en una de sus columnas la tengo como HyperLinkColumn, ok ahora a ese dato q es tipo string le voy a concatenar dos numeritos mas, por lo tanto lo esto haciendo aqui:

if (e.Item.ItemType!=ListItemType.Header && e.Item.ItemType!=ListItemType.Footer)
{
string cadena = e.Item.Cell[0].Text
e.Item.Cell[0].Text = cadena+variable
}

pero cuando lo ejecuto por pasos e.Item.Cell[0].Text = ""

ahh en mi grid la primera columa es la de HyperLinkColumn,
por eso digo e.Item.Cell[0] columna cero.

a que se debe esto? por las demas si las puedo manipular ya q son BoundColumn

gracias anticipadas
__________________
grissss :Zzz:
  #2 (permalink)  
Antiguo 13/07/2005, 16: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
Lo que me llama la atencion es ésto:

Cita:
if (e.Item.ItemType!=ListItemType.Header && e.Item.ItemType!=ListItemType.Footer)
{
string cadena = e.Item.Cell[0].Text
e.Item.Cell[0].Text = cadena+variable
}
Lo estas checando con los headers of footers..?? eso es correcto.. no debería ser así:

Cita:
if (e.Item.ItemType == ListItemType.AlternatingItem ||
e.Item.ItemType == ListItemType.Item)
{
string cadena = e.Item.Cell[0].Text
e.Item.Cell[0].Text = cadena+variable
}
Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 13/07/2005, 17:13
Avatar de grisel  
Fecha de Ingreso: diciembre-2004
Ubicación: Mexico
Mensajes: 215
Antigüedad: 19 años, 4 meses
Puntos: 0
Hola.

Pues ya lo hice asi :

if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
string cadena = e.Item.Cell[0].Text;
e.Item.Cell[0].Text = cadena+variable;
}

y pues nada e.Items.Cell[0].Text = "", todas las veces que pasa por ahi.

Sera acaso porque esa es una HiperLinkColumn?
__________________
grissss :Zzz:
  #4 (permalink)  
Antiguo 14/07/2005, 08:19
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:
Sera acaso porque esa es una HiperLinkColumn?
Ahh ok.. por un momento pensé que estabas usando un templatecolumn.. te recomiendo que lo hagas usando un hyperlink dentro de un templatecolumn.. algo como ésto:

Cita:
<asp:TemplateColumn>
<ItemTemplate>
<asp:HyperLink Runat=server NavigateUrl='<%# DataBinder.Eval(Container.DataItem,"Tu_Campo") %>' ID="hyperLink1" Text='<%# DataBinder.Eval(Container.DataItem,"Tu_Campo") %>'> </asp:HyperLink> </ItemTemplate>
</asp:TemplateColumn>
Y ya en tu itemdatabound podrías hacer algo así:

Cita:
if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
HyperLink lnk = (HyperLink) e.Item.Cells[X].FindControl("hyperLink1");
lnk.Text = lnk.Text + variable
}
Creo que eso te servirá..
  #5 (permalink)  
Antiguo 14/07/2005, 17:12
Avatar de grisel  
Fecha de Ingreso: diciembre-2004
Ubicación: Mexico
Mensajes: 215
Antigüedad: 19 años, 4 meses
Puntos: 0
Ok. Si me sirvio muchas gracias.

saludos
__________________
grissss :Zzz:
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 09:14.