• UltraWebGrid中添加下拉菜单并实现下拉菜单切换事件


    UltraWebGrid将数据列表中的某列设置为下拉菜单样式:

    1.后台添加样式:

     ValueList CtlList = new ValueList();
     this.gridHelper.AddDropDownlistColumn("CONTROLDATA", "管制值类型", CtlList);
    AddDropDownlistColumn方法如下:

    public void AddDropDownlistColumn(string key, string headerText, ValueList newValueList)
    {
      this.Grid.Bands[0].Columns.Add(key);
      this.Grid.Bands[0].Columns.FromKey(key).HeaderText = headerText;

      this.Grid.Bands[0].Columns.FromKey(key).Type = ColumnType.DropDownList;

      this.Grid.Bands[0].Columns.FromKey(key).ValueList = newValueList;
      this.Grid.Bands[0].Columns.FromKey(key).CellStyle.BackColor = System.Drawing.Color.White;

    }

    2.下拉菜单数据绑定:

    定义一个ValueList,将查询出的数据Add到Valielst,最后将Valielst赋值到webgrid中"controldata"列的ValueList属性。

    ValueList Valielst = this.gridWebGrid.Columns.FromKey("CONTROLDATA").ValueList;
              
    object[] objParam = sysFacade.QueryParameter("", "LF_CONTROL_TYPE", "", true, 1, 100);               
    if (objParam != null && objParam.Length > 0)
    {
         for (int i = 0; i < objParam.Length; i++)
         {
              Valielst.ValueListItems.Add(objPara.ParameterDescription, objPara.ParameterAlias);
         }
    
         this.gridWebGrid.Columns.FromKey("CONTROLDATA").ValueList = Valielst;
                    
         this.gridWebGrid.Columns.FromKey("CONTROLDATA").DefaultValue = this.gridWebGrid.Columns.FromKey("CONTROLDATA").ValueList.ValueListItems[0].ToString();                 
    }

    如上方式,即可实现webgrid中下拉菜单的显示。

    给UltraWebGrid中下拉菜单添加切换事件(使用js实现):

    1.在前台<igtbl:ultrawebgrid><DisplayLayout>......</DisplayLayout></igtbl:ultrawebgrid>  中添加代码:

    <ClientSideEvents AfterCellUpdateHandler="AfterCellUpdateHandler" />

    2.添加js函数

    当下拉菜单切换完成时,将触发AfterCellUpdateHandler函数。

    function AfterCellUpdateHandler(gridName, itemName) {
        var grid = igtbl_getGridById(gridName);
        var row = igtbl_getRowById(itemName);   //获取当前行
        var cell = igtbl_getCellById(itemName); //获取当前单元格
                    
        row.getCellFromKey("CONTROLDATA").Value.replace(/s+/g, "");
        row.getCellFromKey("USL").setEditable(false);
    }

       row.getCellFromKey("CONTROLDATA").Value; 获取当前行key值为CONTROLDATA的单元格的内容

       row.getCellFromKey("USL").setEditable(true); setEditable用来设置单元格是否可以编辑 true:可编辑 false:不可编辑

    如上,即实现了UltraWebGrid中下拉菜单的切换事件。

  • 相关阅读:
    Bootstrap表单验证插件bootstrapValidator使用方法整理
    去掉表格前符号
    消除float浮动的影响
    html 让一行文字居中
    java通过各种类型驱动连接数据库
    命令行查看端口
    You can't specify target table 'table' for update in FROM clause
    mysql 添加字段 修改字段为not null
    Js、Jquery定时执行(一次或者重复多次,取消重复)
    c# datetime与 timeStamp(unix时间戳) 互相转换
  • 原文地址:https://www.cnblogs.com/qianlang/p/12896235.html
Copyright © 2020-2023  润新知