Mensaje dentro de Acceso y trabajo con datos

Responder 
#1 - 08/10/2010 16:18:39 Reporta abuso | Link Permanente
666lawyer
Fecha de registro: 05/06/2008
0 post en este tema
1 post en acceso y trabajo con datos
11 posts en todos los foros
gridview y htmlencode

Responder Citar
Hola,

Tengo una aplicación en que utilizo htmlencode para los campos de textos que se graban en la base de datos. El problema es que cuando los lee de la misma el gridview los muestra sin convertir (htmldecode) y no se donde puedo poner esta intrucción para que los muestre correctamente.  He visto en internet la sugerencia de utlizar TemplateField cargar un label y asignarle alli en htmlencode, pero los ejemplos que hay es en la página aspx.  Y yo necesito hacerlo por codigo, ya que el grid se genera onfly.
Aqui encontre un ejemplo.  Pero, como hago para pasarle el campo de la base que corresponde al gridview (asunto), ya que en este caso me lo toma como un string
Gracias


Declarando
TemplateField tf = new TemplateField()

tf.ItemTemplate = MyTemplate()



public class MyTemplate : ITemplate
{
public MyTemplate()
{
}

//required function to be implemented
public void InstantiateIn(Control control)
{

Label lb = new Label();
lb.ID = "lblAsunto";
lb.Text = HttpUtility.HtmlDecode("asunto");
control.Controls.Add(lb);
}

Tambien intente con
GVNLegal.RowDataBound += new GridViewRowEventHandler(GVNLegal_RowDataBound);

void GVNLegal_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType == DataControlRowType.DataRow)
{
// Display the company name in italics.
e.Row.Cells[6].Text = HttpUtility.HtmlDecode( e.Row.Cells[6].Text);
}
}
Pero tampoco funciona. Alguna idea?. Gracias.


EDITADO 08/10/2010 16:48:53: RowDataBound
Volver arriba