比如我数据库中有两字段值分别为1,2 datagrid中一列根据这两值生成1年2班.该如何创建并显示在datagrid中?刚学asp.net,请大侠指点...

解决方案 »

  1.   

    if ((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem) || (e.Item.ItemType == ListItemType.SelectedItem))
            {
                //新列
                TableCell tc = new TableCell();
                //文字连接
                HyperLink ViewContent = new HyperLink();
                ViewContent.Text = "确认修改";
                ViewContent.NavigateUrl = "xxx" + e.Item.Cells[1].Text;
                ViewContent.Target = "_blank";
                tc.Controls.Add(ViewContent);
                //加入到行
                e.Item.Cells.Add(tc);
    }
      

  2.   

    ls的好象是用到修改数据,而我要达到的效果是数据库中两个字段的值生成datagrid的一个新列来.比如1,2 -> 年级:1年2班
      

  3.   

    如果你的数据源是个dataset的话可以这样
    DataRow dr
    dr=new DataRow("aaa")
    dataset.DataTables["表"].Rows.add(dr)for(int i=0;i<=dataset.DataTables["表"].Rows.Count)
    {
    if(dataset.DataTables["表"].rows[i]["aaa"]=="")
    {
       dataset.DataTables["表"].rows[i]["aaa"]=dataset.DataTables["表"].rows[i]["年级"]+"年"+dataset.DataTables["表"].rows[i]["班级"]+"班";
    }
      

  4.   

    for(int i=0;i<=dataset.DataTables["表"].Rows.Count;i++)
    少了个i++
      

  5.   

    不好意思  上面错了
    DataCloumn dc
    dc=new DataCloumn("aaa")
    dataset.DataTables["表"].Cloumns.add(dc)for(int i=0;i<=dataset.DataTables["表"].Rows.Count)
    {
    if(dataset.DataTables["表"].rows[i]["aaa"]=="")
    {
       dataset.DataTables["表"].rows[i]["aaa"]=dataset.DataTables["表"].rows[i]["年级"]+"年"+dataset.DataTables["表"].rows[i]["班级"]+"班";
    }
      

  6.   

    个人觉得最简单的方式可以在数据库里实现,用不着自定义列:
    select year + '年' + class + '班' as temp from table
    这样已经是你想要的格式了.何必用自定义列呢,反而麻烦多了!
      

  7.   

    ysen1984() 
    我用你的c#代码改成vb脚本好象会报错...scckobe(聪)
    谢谢你提供的思路,只是我也想学一下如何在datagrid中添加自定义列,毕竟很多地方会用到
      

  8.   

    较常用的绑定列 模版列  指定相应的绑定项   添加到DataGrid的Columns集合里就行了
      

  9.   

    <asp:TemplateColumn HeaderText="班级名称">
    <ItemTemplate>
    <%# DataBinder.Eval(Container.DataItem,"字段1").ToString() + "年" + DataBinder.Eval(Container.DataItem,"字段2").ToString() + "班" %>
    </ItemTemplate>
    </asp:TemplateColumn>
      

  10.   

    在DataGrid添加自定义列的话AutoGenerateColumns设置为false,然后直接在属性生成器里面的的列里面添加你要的东西,代码都不用写,多方便!