剑花 烟雨

   江南  好 风景旧曾谙 日出江花红胜火 春来江水绿如蓝 能不忆东北

理想中的建筑师应该是一个诗人、数学家、精通历史、精通心理学、熟悉音乐、了解医学、还要具备天文学和计算的基本知识。
                                                                                                                         ------------------公元前25年,罗马建筑学家Vitruvius
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

UltraWebGrid模板列及行的相关操作(原)

Posted on 2007-01-31 09:40  落花人独立  阅读(2533)  评论(4编辑  收藏  举报
        在使用Infragistics NetAdvantage的UltraWebGrid的时候,总是会遇到如何去选择当前行,当前行的某个字段的值,检测模板列的控件并判断其状态等问题。在网上来查找到相关的问题也是七零八落的,总结一下写在这里。
         1,获取UltraWebGrid选中行的信息
         首先要设置UltraWebGrid选择状态为行选择模式。
UltraWebGrid1.DisplayLayout.SelectTypeRowDefault= Infragistics.WebUI.UltraWebGrid.SelectType.Single;
          然后可以获取当前选择的行的信息
//UltraWebGrid1第一列的值如: 
string gridValue = UltraWebGrid1.DisplayLayout.SelectedRows[0].GetCellValue(this.UltraWebGrid1.Columns[0]).ToString();
           受到这个代码的启发,可以获取UltraWebGrid中任何一行的某一列某一行的值
//获取第i行第1列的值
string yqbh = UltraWebGrid1.DisplayLayout.Rows[i].GetCellValue(UltraWebGrid1.Columns[1]) .ToString ();
          2,设置UltraWebGrid的第0列为模板列,加入CheckBox控件,判断其状态是否被选中,代码如下:
         
//可以写在任何地方,属于通用代码
Infragistics.WebUI.UltraWebGrid.TemplatedColumn   tcol   =   
                                                                                             (TemplatedColumn)UltraWebGrid1.Bands[
0].Columns[0];//模板列 
foreach(CellItem   item   in   tcol.CellItems)  
  
{              
                    System.Web.UI.WebControls.CheckBox   chkIsHaveRight   
=  
                                                        (System.Web.UI.WebControls.CheckBox)item.FindControl(
"chbShenhe");  
                
if(chkIsHaveRight.Checked  ==  true)  
                
{  
                         
//进行相关的操作
                          }

                 }
在这里需要考虑的是如何实现对于UltraWebGrid的跨行操作,对于行的值可以根据UltraWebGrid.DisplayLayout.Pager.PageSize进行计算处理。
count hit
欢迎您到紫阁阳光坐客