Los datos se unen a la plantilla de GridView detrás de código
Pregunta
¿Cómo los datos mediante programación se unen a una columna plantilla de elementos personalizados para un GridView? Hasta ahora, he hecho algo similar a esto:
TemplateField foo = new TemplateField();
foo.ItemTemplate = new bar();
this.GridView1.Columns.Add(foo);
donde bar es como sigue:
public class bar : ITemplate
{
public bar()
{
}
public void InstantiateIn(Control container)
{
DropDownList ddl = new DropDownList();
container.Controls.Add(ddl);
}
}
(la lista desplegable real se rellena)
Pero ITemplate no contiene ningún tipo de propiedades de unión para implementar los datos, y no parece la clase TemplateField tener ningún bien ...
¿Qué hago?
Edit: La otra mitad es ser capaz de manejar los cambios a volver a la fuente de datos originales. Si tan sólo controlar los eventos rowupdate, no veo mi TemplateColumn en las listas OldValues ??/ NewValues.
Solución
GridView. RowDataBound evento.
Esto explica las cosas ... http://www.aspnettutorials.com/tutorials/controls/dropdownlist- gridview-csharp.aspx