Infragistics.WebUI.UltraWebGrid功能比较强大,尤其是客户端时间比较丰富,能实现较多的控制。下面就有关个别客户端事件稍微说明一下。

 

在.cs代码中添加

 

;
UltraWebGrid1.DisplayLayout.ClientSideEvents.ColumnHeaderClickHandler = "Template_ColumnHeaderClickHandler";
UltraWebGrid1.DisplayLayout.ClientSideEvents.AfterCellUpdateHandler 
= "Template_AfterCellUpdateHandler";
UltraWebGrid1.DisplayLayout.ClientSideEvents.AfterRowActivateHandler 
= "Template_AfterRowActivateHandler";

 

以上四个分别为:单元格单击事件,列头单击事件,单元格更新后事件,选择行事件。

 

注意单元格单击事件需要在前面页面该控件的样式布局部分修改CellClickActionDefault="CellSelect",如果是

行选择CellClickActionDefault="RowSelect"

 
                 CellClickActionDefault="CellSelect" SelectTypeRowDefault="Single" RowSelectorsDefault="No" SelectTypeCellDefault="Extended">

 

然后编写客户端事件

 

 Template_CellClickHandler(gridName, cellId, button)
{   
    if(button==2)
        
return;
        
    CurrentGrid
=igtbl_getGridById(UltraWebGrid1);
    CurrentCell
=CurrentGrid.getActiveCell();
    CurrentColumnIndex
=CurrentCell.Index;
    CurrentRow
=CurrentCell.Row;
    CurrentRowIndex
=CurrentRow.getIndex();

    
//其他你要执行的js代码
}

//行单击事件 
function Template_AfterRowActivateHandler(gridId,rowId)
{
    CurrentRow
=igtbl_getRowById(rowId);
    CurrentRowIndex
=CurrentRow.getIndex();

    
//其他你要执行的js代码
}

//表头单击事件(参数没写,自己找一下)
function Template_ColumnHeaderClickHandler()
{

}

//单元格更新后事件
function Template_AfterCellUpdateHandler(gridName, cellId)
{

}

 

 其他一些常用操作

 

 

function DeleteRow()
{
    
var row=igtbl_getActiveRow(UltraWebGrid1); 
    CurrentRow
=row;
    
//有时需要执行一些检查,满足一定条件后然后执行一个回调函数来删除,所以将当前行保存在全局变量中
    CurrentRow.deleteRow();
}

 

添加行:

 

function InsertRow()
{
    CurrentGrid
=igtbl_getGridById(UltraWebGrid1);
    CurrentGrid.Rows.addNew();

    
//得到刚添加的行,可以return(返回)刚添加的行,然后进行自动赋值等操作
    var row=igtbl_getRowById(CurrentGrid.Rows.getLastRowId());
    
//得到当前行的下一行
    var row=CurrentRow.getNextRow();
}

 

 

根据Id得到某个行或单元格

 

igtbl_getCellById(cellId);
igtbl_getRowById(rowId);

 

如果单元格是图片,可以这样赋值

addCell.Element.innerHTML="<NOBR><IMG style=\"CURSOR: hand\" onclick=InsertRow() src=\"../images/Default/add.bmp\"></NOBR>";

 

如果是文本,应该

 

row.getCell(columnIndex);
cell.setValue();

 

更多使用技巧完善中!

 

 

相关文章:

  • 2021-06-12
  • 2021-10-26
  • 2021-08-29
  • 2021-10-09
  • 2021-11-13
  • 2021-05-16
  • 2021-07-26
猜你喜欢
  • 2022-12-23
  • 2021-09-21
  • 2021-11-16
  • 2022-12-23
  • 2021-08-18
  • 2021-11-26
  • 2021-10-06
相关资源
相似解决方案