msdn上有比较详细的说明
ms-help://MS.MSDNQTR.2003FEB.2052/cpref/html/frlrfSystemWebUIWebControlsTemplateColumnClassItemTemplateTopic.htm

解决方案 »

  1.   

    动态生成grid的column 以dropdownlist为例
    public class DeptColumn :TemplateColumn
    {
    public DeptColumn(string dept)
    {
    this.HeaderText = dept;
    HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
    HeaderStyle.Width = Unit.Percentage(9);
    ItemStyle.CssClass = "Normal";
    ItemTemplate = new IDeptColumn(dept);
    }
    } public class IDeptColumn:ITemplate
    { ReturnData _dbAccess = null;
    private string _dept = string.Empty;

    public IDeptColumn(string dept)
    {
    _dept = dept;
    _dbAccess = new ReturnData();
    } public void InstantiateIn(System.Web.UI.Control container)
    {
    DropDownList dl = new DropDownList();
    dl.CssClass = "Normal";
    dl.Width = Unit.Pixel(100);
    dl.ID = "dl_" + _dept;
    dl.DataBinding += new EventHandler(dl_OnDataBinding);
       
    container.Controls.Add(dl);
    }

    private void dl_OnDataBinding(object sender,EventArgs e)
    {
    DropDownList dl = (DropDownList)sender;
    DataGridItem container = (DataGridItem) dl.NamingContainer;
    string  qbrId = ((DataRowView)container.DataItem)["qbrId"].ToString();

    if (qbrId.Length > 0)
    {
    dl.DataSource = _dbAccess.QBR_SurveyPlanUserGet(int.Parse(qbrId),  _dept);
    dl.DataTextField = "username";
    dl.DataValueField = "userid";
    }

    } }
      

  2.   

    晕啊,楼主你是不是要把下拉列表邦定到GRID的列上啊,
    如果是的看这里
    http://blog.csdn.net/langmafeng/archive/2004/11/04/167164.aspx
    用这种方法,可以把一般你想要的控件都帮上去。时间,日期,数字框,动太下拉列表。