目的
 表題のとおり、DataGrid内のセルを結合し、表示する方法を示す。
ItemDataBoundメソッド内以下の処理を行う。
- ColumnSpanプロパティの設定する
- あふれてしまう2列目(item2)の1~5のデータを削除する
        protected void MyGrid_ItemDataBound(object sender, DataGridItemEventArgs e)
        {
            if(e.Item.ItemType != ListItemType.Header && e.Item.ItemType != ListItemType.Footer)
            {
                e.Item.Cells[0].ColumnSpan = 2; // Colspanの設定
                e.Item.Cells.RemoveAt(1);       // ★ポイント:不要なデータの削除★
            }
        }
ソース全文
Default.aspx.cs -------------------------------
using System;
using System.Collections.Generic;
using System.Data;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace DataGrid_ColSpan
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();
            DataRow dr = null;
            dt.Columns.Add(new DataColumn("item", typeof(string)));
            dt.Columns.Add(new DataColumn("item2", typeof(string)));
            for (int i = 0; i < 5; i++  )
            {
                dr = dt.NewRow();
                dr["item"] = i.ToString();
                dr["item2"] = (i+1).ToString();
                dt.Rows.Add(dr);
            }
            MyGrid.DataSource = dt;
            MyGrid.DataBind();
        }
        protected void MyGrid_ItemDataBound(object sender, DataGridItemEventArgs e)
        {
            if(e.Item.ItemType != ListItemType.Header && e.Item.ItemType != ListItemType.Footer)
            {
                e.Item.Cells[0].ColumnSpan = 2; // Colspanの設定
                e.Item.Cells.RemoveAt(1);       // ★ポイント:不要なデータの削除★
            }
        }
    }
}
-------------------------------
Default.aspx  -----------------------------
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="DataGrid_ColSpan._Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>DataGrid_ColSpan Sample</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:DataGrid id="MyGrid" runat="server" OnItemDataBound="MyGrid_ItemDataBound" />
    </div>
    </form>
</body>
</html>
-----------------------------------


 
