gaoxiang

专注于.NET技术

博客园 首页 新随笔 联系 订阅 管理

 

<HTML>
    
<HEAD>
        
<title>MergeHeader</title>
        
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
        
<meta name="CODE_LANGUAGE" Content="C#">
        
<meta name="vs_defaultClientScript" content="JavaScript">
        
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    
</HEAD>
    
<body MS_POSITIONING="GridLayout">
        
<form id="Form1" method="post" runat="server">
            
<asp:datagrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 8px; POSITION: absolute; TOP: 8px" runat="server"
                BorderColor
="Tan" BorderWidth="1px" BackColor="LightGoldenrodYellow" CellPadding="1" ForeColor="Black"
                CellSpacing
="1">
                
<FooterStyle BackColor="Tan"></FooterStyle>
                
<SelectedItemStyle ForeColor="GhostWhite" BackColor="DarkSlateBlue"></SelectedItemStyle>
                
<AlternatingItemStyle BackColor="PaleGoldenrod"></AlternatingItemStyle>
                
<HeaderStyle Font-Bold="True" BackColor="Tan"></HeaderStyle>
                
<PagerStyle HorizontalAlign="Center" ForeColor="DarkSlateBlue" BackColor="PaleGoldenrod"></PagerStyle>
            
</asp:datagrid>
        
</form>
    
</body>
</HTML>

public class MergeHeader : System.Web.UI.Page
    
{
        
private DataGrid m_dgDatagridToDecorate = null;
        
private ArrayList m_arrHeaderCells = null;
        
protected System.Web.UI.WebControls.DataGrid DataGrid1;        
        
private Hashtable m_htblRowspanIndex = new Hashtable();

        
private void Page_Load(object sender, System.EventArgs e)
        
{
            
if(!this.IsPostBack)
            
{
                MergeGrid();
            }

        }


        
AddMergeHeader

        
property        

        
DatagridToDecorate_ItemCreated        

        
NewRenderMethod

        
GetData

        
MergeGrid        

        
Web Form Designer generated code        
    }

 源代码下载/Files/singlepine/MergeHeader.rar

 

posted on 2005-11-23 17:26 小山 阅读(685) 评论(6)  编辑 收藏 收藏至365Key 所属分类: DataGrid

Feedback

# re: 合并实现DataGrid多表头 2005-12-30 13:10 zgy
没有代码下载吗?  回复
  

# re: 合并实现DataGrid多表头 2005-12-31 12:27 lh
小山前辈,
你这个是datagrid的单元格合并,请问在asp.net表单中合并form 的单元格时候怎么实现呢?想来不会比这个更难吧?  回复
  

# re: 合并实现DataGrid多表头 2005-12-31 12:45 小山
也是可以的,在 DatagridToDecorate_ItemCreated里面做些处理就可以了,现在是判断if(ListItemType.Header == lit),如果要在表格内,那就判断if(ListItemType.Header!= lit),然后相应的修改合并地方就可以实现,具体的你试试

private void DatagridToDecorate_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
//*** Examine if the item created is the header item
ListItemType lit = e.Item.ItemType;
if(ListItemType.Header != lit)
{
//*** Redirect the default header rendering method to our own method
e.Item.SetRenderMethodDelegate(new RenderMethod(NewRenderMethod));
}
}
  回复
  

# re: 合并实现DataGrid多表头 2006-01-06 10:04 过路者
有没有WinForm的合并代码呀?  回复
  

# re: 合并实现DataGrid多表头 2006-02-07 09:27 天外飞仙
有没有WinForm的合并代码呀?   回复
  

# re: 合并实现DataGrid多表头 2006-03-02 10:36 凤舞九天
我加入之后,html中
datagrid对应的</table>消失了,不知是否算是个小bug
不知道为什么会不见了呢?  回复
  
posted on 2006-03-10 10:11  S孤单一吻S  阅读(1102)  评论(0)    收藏  举报