我目前正在使用Infragistics的UltraWebGrid控件来显示Oracle数据库中的数据。我能做到这一点恰到好处。现在我需要在所有其他列标题的顶部放置一个多列标题。我尝试使用下面的代码但是当我检查它时,似乎没有触发InitializeLayOut事件。还有其他办法吗?就像我使用Visual Studio 2008,Oracle 11g和Infragistics v3。
protected void UltraWebGrid1_InitializeLayout(object sender, Infragistics.WebUI.UltraWebGrid.LayoutEventArgs e)
{
ColumnHeader colHead;
for (int i = 0; i < e.Layout.Bands[0].HeaderLayout.Count; i++)
{
colHead = e.Layout.Bands[0].HeaderLayout[i] as ColumnHeader;
colHead.RowLayoutColumnInfo.OriginY = 1;
}
ColumnHeader ch = new ColumnHeader(true);
ch.Caption = "From Dispo";
ch.RowLayoutColumnInfo.OriginX = 0;
ch.RowLayoutColumnInfo.OriginY = 0;
e.Layout.Bands[0].HeaderLayout.Add(ch);
ch.RowLayoutColumnInfo.SpanX = 2;
}
谢谢你们。
答案 0 :(得分:1)
InitializeLayout事件应作为数据绑定的一部分触发。如果未触发,则应验证其是否正确连接。
如果您确实想测试事件之外的逻辑,e.Layout等于ultraWebGrid1.DisplayLayout,因此您可以修改代码并将其放入页面加载事件中。