xtremereality
asked on
gridview and controls on the fly
Hi Experts,
how can i create a gridview by code and put inside a control created on the fly as well?
for istance i wanna have a gridview with 3 image controls inside created by code (not in design mode).
Thanks
how can i create a gridview by code and put inside a control created on the fly as well?
for istance i wanna have a gridview with 3 image controls inside created by code (not in design mode).
Thanks
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
this is the class that implements ITemplate, i get some errors on the points with the arrows.
see below
public class GridViewTemplate : System.Web.UI.Page, ITemplate
{
ListItemType _templateType;
string _columnName;
public GridViewTemplate(ListItemT ype type, string columnName)
{
_templateType = type;
_groupName = columnName;
}
public void InstantiateIn(System.Web.U I.Control container)
{
switch (_templateType)
{
case ListItemType.Header:
break;
case ListItemType.Item:
Literal lc = new Literal();
lc.DataBinding += new EventHandler(this.lc_DataB inding);
container.Controls.Add(lc) ;
break;
case ListItemType.EditItem:
break;
case ListItemType.Footer:
break;
}
}
private void lc_DataBinding(Object sender, EventArgs e)
{
Literal lc = (Literal)sender;
GridViewRow row = (GridViewRow)lc.NamingCont ainer;
string propertyValue = <------------------------- ---------- ---------- ---------- ----- Get error here
DataBinder.Eval(row.DataIt em, "PropertyName").ToString() ; <--------------- And here
lc.Text = propertyValue;
}
}
see below
public class GridViewTemplate : System.Web.UI.Page, ITemplate
{
ListItemType _templateType;
string _columnName;
public GridViewTemplate(ListItemT
{
_templateType = type;
_groupName = columnName;
}
public void InstantiateIn(System.Web.U
{
switch (_templateType)
{
case ListItemType.Header:
break;
case ListItemType.Item:
Literal lc = new Literal();
lc.DataBinding += new EventHandler(this.lc_DataB
container.Controls.Add(lc)
break;
case ListItemType.EditItem:
break;
case ListItemType.Footer:
break;
}
}
private void lc_DataBinding(Object sender, EventArgs e)
{
Literal lc = (Literal)sender;
GridViewRow row = (GridViewRow)lc.NamingCont
string propertyValue = <-------------------------
DataBinder.Eval(row.DataIt
lc.Text = propertyValue;
}
}
ASKER