Name

  • 概述
    • 网格对应对象标识

AllowChooseParent

  • 概述

    • 网格树是否勾选父级联动勾选子级(默认为false)

      HasChecked=”True”并且 IsTree=”True”时,标识是否选中父节点。

      默认为False

  • 示例

    <Grid IsTree="True" HasChecked="True" IsChooseParent="False">
    
    1

AllowColumnMove

  • 概述

    • 是否启动网格列拖放

      值:True(默认),False


AllowDragRow

  • 概述

    是否允许拖动网格数据(默认为false)

    Bool类型

    默认值为False

    OnBeforeDragRow(r1,r2):行拖动放开前执行事件: 第一参数为:当前拖动的行对象,第二参数为:拖动到的行对象, 需返回Bool类型值,true表示可拖动,false表示不可拖动,可加对话框提示 __OnAfterDragRow(r1,r2): 行拖动放开后执行事件: 第一参数为:当前拖动的行对象,第二参数为:拖动到的行对象。


AllowEnterKey

  • 概述

    • 在可编辑网格中,是否启用回车键切换焦点,与EnterKeyType配套,

      当跳到下一行并且下一行为空时(即最后一行),则执行自定义事件,其他情况不执行

      事件名:__OnAfterEnterKeyDown(row)

      Row:为最后一行行对象

  • 示例

    Bool类型

    默认值为为False

    <Grid AllowEnterKey="true">


AllowSort

  • 概述
    • 是否允许排序 ,默认****True
  • 示例
    • <Grid AllowSort="false" >

AutoHeight

  • 概述

    • 自动高度(根据行数据自动调整高度)
  • 示例

    • Bool类型

      默认值为False

    <Grid AutoHeight="false">


AutoMergesData

  • 概述
    • 获取或设置是否根据数据的#rspan,#cspan合并数据行列 默认为false
  • 示例
    • <Grid AutoMergesData="true">

AllowEdit

  • 概述
    • 是否允许用户编辑。当值为True时,网格是允许编辑的。但是若用户对该业务没有修改权限时,则无法编辑,否则允许编辑;当值为False时,网格不允许编辑,不论用户对该业务是否拥有编辑权限。默认为****False
  • 示例
    • <Grid AllowEdit="false">

EditURL

  • 概述

    • 在默认情况下,双击网格中的一行记录时,打开的页面的地址。

      它会判断一个双击前动作,双击前动作对应的方法是:

      OnBeforeCellDblClick(gridName,tableName,rowIndex,colIndex,cellObj)

      所用的参数与双击单元格给出的参数一致。

      该方法由开发人员在配置过程中,在Script

  • 示例

    • <Grid EditURL="Config/Edit.aspx">

Filter

  • 概述

    • 网格在载入数据时的过滤条件。
  • 示例

    • 支持伪变量

      若配置了自定义数据源,则该属性无效!

      如:IsDeleted=’False’ and userId=’@SysUserId’

      <Grid Filter="Isdeleted is null or Isdelete=0">


FirstIsNullData

  • 概述

    • 网格在第一次加载时是否为空数据
  • 示例

    • Bool类型

      默认值为False

      <Grid FirstIsNullData="false">


FreezedIndex

  • 概述

    • 网格中要冻结的列数,值为N的时候,则风格的前N列会被冻结,在移动横向滚动条的时候,前N列不会被移动,而其它的列会被移动。

      若值为00

  • 示例

    • <Grid FreezedIndex="2">

HasRowIndex

  • 概述

    • 是否有序号列

      值:True,False(默认)

      当HasRowIndex=”True”时,可在网格里配置虚拟列RowIndex(也可以不配置),列的数据与正常列一致;

      <Column Field="RowIndex" Caption="" DataFormatString="T"/>

      例:

      配置01,02,03,04,05,06 DataFormatString=””

      配置T01,T02,T03,T04 DataFormatString=”T””T00”


HasDetail

  • 概述

    • 标识是否可以对某一行双击操作
  • 示例

    • 就是是否禁用DblClick事件,值为True时启用,值为False时禁用。默认为****False

      <Grid HasDetail="True">


HasChecked

  • 概述

    • 网格的每一行最前面是否有一个供用户进行勾选的CheckBox
  • 示例

    • 值为True(默认)和False。

      <Grid HasChecked="true">


HasStatusBar

  • 概述

    • 是否显示状态栏

      值范围:true,false

      默认为:true


HasRowHeader

  • 概述
    • 网格在呈现的时候是否有行头。值为True和False**。默认为False**
  • 示例 <Grid HasRowHeader="True">

HasPurviewFilter

  • 概述

    • 是否启用权限控制过滤,False时就不进行权限控制
  • 示例

    • Bool类型

      默认值为为True

      <Grid HasPurviewFilter="true">


HasAlternately

  • 概述
    • 是否显示斑马线(默认为true)

HasFooterBar

  • 概述
    • 是否显示页脚(默认为false)

HasAlternately

  • 概述

    • Bool类型

      默认值为True

      是否启用网格的斑马线样式

  • 示例

    <Grid HasAlternately="true">


Height

  • 概述
    • 从表显示的高度(默认为150px)

HasSortImg

  • 概述
    • 是否显示排序图标(默认为true)

IsOnlyLoadPartData

  • 概述

    • (网格树中)是否只显示部分数据。而数据显示的级别(下拉树节点)以 网格节点配置的TreeExpandLevel的值。

      TreeExpandLevel没写的时候显示全部。本属性只适合数据展示的时候可用。常用于网格树数据过多(超过300条数据)要一次性显示。

  • 示例

    <Grid Name="PMIS_Pro_StageDuty" UniqueNo="12500" AllowSort="false" HasRowHeader="True" TreeColumn="1" 
    IsOnlyLoadPartData="true" IsTree="True" TreeExpandLevel="2" HasStatusBar="False" RelationField="parentstagedutyid" AllowEdit="True" HasDetail="True" HasChecked="false"  AllowAddNew="True" NewRowLostFocusAction="AlwaysPrompt" OpenType="Grid" EditURL="Config/Edit.aspx" PageSize="1000"  WinWidth="800px" WinHeight="510px">
                       <Column Field="NO" FieldType="VarChar" CaptionText="序号" IsVirtual="True" Width="30" HeaderAlign="center" CellAlign="left" IsEdit="false"></Column>
                       <Column Field="Name" FieldType="VarChar" CaptionText="名称" IsVirtual="True" Width="250" CellAlign="left" IsEdit="false"></Column>
                       <Column Field="parentstagedutyid"    FieldType="VarChar" CaptionText="上级" Width="0" ParentTable="" CellAlign="Center"></Column>
                       <Column Field="WBSNo" FieldType="VarChar" CaptionText="WBS" IsVirtual="True" Width="60" IsEdit="false" CellAlign="Center"></Column>
                       <Column Field="jh" FieldType="VarChar" CaptionText="计划时间" IsVirtual="True" Width="170" CellAlign="Center" IsEdit="false"></Column>
                       <Column Field="PlanDuration" FieldType="Int32" CaptionText="计划工期" IsVirtual="True" Width="80" CellAlign="Center" IsEdit="false"></Column>
                       <Column Field="sj" FieldType="VarChar" CaptionText="实际时间" IsVirtual="True" Width="170" CellAlign="Center" IsEdit="false"></Column>
                       <Column Field="ActualDuration" FieldType="Int32" CaptionText="实际工期" IsVirtual="True" Width="80" CellAlign="Center" IsEdit="false"></Column>      
                       <Column Field="Schedule" FieldType="VarChar" CaptionText="进度" IsVirtual="True" Width="60" CellAlign="center" IsEdit="false"></Column>
                       <Column Field="StageBudget" FieldType="money" CaptionText="资金预算" IsVirtual="True" Width="100" CellAlign="Center" IsEdit="false"></Column>
                       <Column Field="ProUser" FieldType="VarChar" CaptionText="负责人" IsVirtual="True" Width="170" CellAlign="left" IsEdit="false"></Column>
                       <Column Field="Resources" FieldType="VarChar" CaptionText="任务资源" IsVirtual="True" Width="170" CellAlign="left" IsEdit="false"></Column>
                       <Column Field="TenderPlan" FieldType="VarChar" CaptionText="任务招标" IsVirtual="True" Width="170" CellAlign="left" IsEdit="false"></Column>
                       <Column Field="Contract" FieldType="VarChar" CaptionText="任务合同" IsVirtual="True" Width="170" CellAlign="left" IsEdit="false"></Column>
                       <Column Field="Caption" CaptionText="审核状态" FieldType="VarChar"    HeaderAlign="center" CellAlign="Center" Width="0" IsEdit="False"/>
                       <Column Field="StageDutyId" FieldType="VarChar" CaptionText="" IsVirtual="True" Width="0" CellAlign="Center"></Column>
                       <Events>
                           <Event Name="OnCellDblClick" Script="OnEdit1"></Event>
                       </Events>
                       <DataSource Type="SqlServer">
                           <![CDATA[   
                       Select  sd.PMIS_ProjectId, sd.PMIS_Pro_StageDutyId, max(Percents)*max(sd.PlanDuration)/100 as FiniDay into #temp from PMIS_Pro_TaskManpowerRes tmr 
                              Join PMIS_Pro_StageDuty sd On tmr.PMIS_Pro_StageDutyId=sd.PMIS_Pro_StageDutyId
                           Where  sd.TaskType='1'  and  (tmr.IsDeleted ='0' or tmr.IsDeleted is null) and (sd.IsDeleted ='0' or sd.IsDeleted is null)
                           Group By sd.PMIS_Pro_StageDutyId,sd.PMIS_ProjectId                       
                 select a.State as StageDutyState,d.caption,a.ActualDuration,a.StageBudget,a.No,a.PMIS_Pro_StageDutyId,a.PMIS_Pro_StageDutyId as StageDutyId,a.Name,
                   (case when a.TaskType='2' then (Select convert(varchar,convert(decimal(18,2),
                                               (sum(FiniDay)/(Select sum(PlanDuration) From PMIS_Pro_StageDuty 
                                                                  Where PMIS_ProjectId=a.PMIS_ProjectId and PMIS_Pro_StageDutyId in (select * from [dbo].[GetAllChildStageDuty](a.PMIS_Pro_StageDutyId)) and TaskType='1')))*100)+'%' 
                                From #Temp 
                                Where PMIS_ProjectId=a.PMIS_ProjectId and PMIS_Pro_StageDutyId in (select * from [dbo].[GetAllChildStageDuty](a.PMIS_Pro_StageDutyId) ) 
                              )
                   else (select convert(varchar,max(Percents))+'%' from PMIS_Pro_TaskManpowerRes tmr where tmr.PMIS_Pro_StageDutyId=a.PMIS_Pro_StageDutyId) end) as Schedule,
                  -- (select convert(varchar,max(Percents))+'%' from PMIS_Pro_TaskManpowerRes tmr where tmr.PMIS_Pro_StageDutyId=a.PMIS_Pro_StageDutyId) as Schedule,
              [dbo].[GetParentStageDutyId]('{@SysUserId}','{@Request['TaskId']}',a.PMIS_Pro_StageDutyId) as parentstagedutyid,a.WBSNo,
              (case when Convert(varchar(10),a.PlanStartTime,120) is null and Convert(varchar(10),a.PlanEndTime,120) is null then '' else (case when Convert(varchar(10),a.PlanStartTime,120) is null then '' else Convert(varchar(10),a.PlanStartTime,120) end)+'`'+(case when Convert(varchar(10),a.PlanEndTime,120) is null then '' else Convert(varchar(10),a.PlanEndTime,120) end) end) as jh,
              (case when Convert(varchar(10),a.ActualStartTime,120) is null and Convert(varchar(10),a.ActualStartTime,120) is null then '' else (case when Convert(varchar(10),a.ActualStartTime,120) is null then '' else Convert(varchar(10),a.ActualStartTime,120) end)+'`'+(case when Convert(varchar(10),a.ActualEndTime,120) is null then '' else Convert(varchar(10),a.ActualEndTime,120) end) end) as sj,
              a.PlanDuration,[dbo].[GetListUser](a.PMIS_Pro_StageDutyId) as ProUser,[dbo].[GetContract](a.PMIS_Pro_StageDutyId) as Contract,(case when a.IsMilestones='1' then '是' else '否' end) as IsMilestones,(case when a.IsKey='1' then '是' else '否' end) as IsKey,
              [dbo].[GetResources](a.PMIS_Pro_StageDutyId) as Resources,[dbo].[GetTenderPlan](a.PMIS_Pro_StageDutyId) as TenderPlan,a.IsCreateContract,a.IsTender
              from PMIS_Pro_StageDuty a
              join PMIS_Project c on a.PMIS_ProjectId = c.PMIS_ProjectId
               left join statecode d on d.statecodeid=a.statecode
              where (a.IsDeleted ='0' or a.IsDeleted is null)
              and a.PMIS_Pro_StageDutyId in (select Id from [dbo].[GetProjectPlanByStageDutyId]('{@SysUserId}','{@Request['TaskId']}'))
              order by  a.no
               Drop Table #Temp
                  ]]>
                  </DataSource>
             </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51

    以上为配置 所有数据都在数据源中体现。

    IsOnlyLoadPartData

    ​ 只显示到2级的数据 其它的子节点的数据需要在网格中直接点解第2级别的图标+号才会把数据显示到网格中


IsTree

  • 概述

    • 用来标识网格是否为树状网格
  • 示例

    • 值:True,False(默认)

      <Grid IsTree="False">


IsKeyValue

  • 概述
    • 是否主键列(左右选和上下选中网格专用)
  • 示例
    • <Grid IsKeyValue="true">

KeyField

  • 概述
    • 网格主键字段
  • 示例
    • <Grid KeyField="ExpInstitutionId">

OpenCheckedEdit

  • 概述

    • 开启网格行选中编辑功能
  • 示例

    • Bool类型

    默认为False

    True:开启点击行记录时,自动选中前面的复选框

    <Grid OpenCheckedEdit="False">


OpenType

  • 概述

    • 双击行时打开页面的方法
  • 示例

    1. open

    2. showModalDialog

    3. showModalessDialog

    4. grid

    默认为****open 当为grid时,在网格内新增一行

    <Grid OpenType="open">


PageSize

  • 概述

    • 分页大小

      默认50

  • 示例

    <Grid PageSize="50">


RelationField

  • 概述

    • 关系字段

      树网格的父id字段

  • 示例

    • <Grid RelationField="ParentId">

##ShowDetail

  • 概述

    • 是否显示表单编辑页面在网格
  • 示例

    • 值范围:true,false 默认:false

    <Grid ShowDetail="true">


ShowDetailPlace

  • 概述

    • 显示表单编辑的位置

      值范围:top,middle,button Top: 表单位于工具栏上 middle: 表单位于工具栏下,网格之上 bottom: 表单位于网格之下 默认为:bottom

  • 示例

    • <Grid ShowDetailPlace="button">

Simple

  • 概述

    • 是否启用精简模式的网格样式

      该模式下只显示分页图标,不显示分页文字

  • 示例

    • Bool类型

      默认值为False

      <Grid Simple="false">


TreeExpandLevel

  • 概述

    • 默认值为0,表示全展开

      网格树加载时默认展开级别

      大于1:表示展开到N级

      小于1

  • 示例

    • <Grid TreeExpandLevel="0" >

TreeColumn

  • 概述

    • 作为树的列所在的列标号,下标从0开始

      树绑定的列(显示图标的列)

  • 示例

    <Grid TreeColumn="1">


Title

  • 概述
    • 网格标题
  • 示例 <Grid title="制度管理">

UesOwnerColumn

  • 概述

    • 在动态列配置中,每个列是否只使用自己的配置信息
  • 示例

    • Bool类型

      默认值为False

      <Grid UesOwnerColumn="False">


View

  • 概述

    • 视图名称
  • 示例

    • 视图要求:

      <Grid View="dbo.SP_GetPurview">

      配置成视图时,用到View属性,值为视图名称。

      其他的配置和普通表网格的配置一样,Name属性可虚拟随便填写。


SortOrder

  • 概述

    • 指示排序方式,Asc, Desc, None, Default ;默认为none
  • 示例

    <Column Field="FileName" FieldType="Varchar"   CaptionText="文件名"  Width="200"   SortOrder="Asc" />
    
    1

网格复合列

FootFun

  • 概述

    • 页脚汇总函数名称

      None, SUM, AVG, COUNT

      默认为None

      注:大小写一定要匹配

  • 示例

    <Column Field="IntendingCharge" CaptionText="总金额" FieldType="Double" FootFun="SUM"  Width="100"/>
    
    1

RefField

  • 概述

    • 引用字段, 仅在内容为#cspan、#rspan、动态列时有效
  • 示例

    <Grid Name="MES_JC_TobLeaf" UniqueNo="110200" FreezedIndex="1" HasChecked="false"  HasRowIndex="false"  HasDetail="false" AllowSort="false" AllowEdit="False" >
          <Column Field="T1" FieldType="VarChar" IsSort="true" SortOrder="asc" CaptionText="烟叶名称"  Width="100" IsVirtual="True"   HeaderAlign="center" CellAlign="left" ></Column>
          <Column Field="displayOrder" FieldType="VarChar" IsSort="true" SortOrder="asc" CaptionText="排序" IsVirtual="True"  Width="0"  HeaderAlign="center" ></Column>
          <Column Field="T2" FieldType="VarChar" CaptionText="年份" IsVirtual="True" Width="320"  HeaderAlign="center" CellAlign="center"></Column>
          <Column Field="T3" FieldType="VarChar" CaptionText="产地" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="left"></Column>
          <Column Field="T4" FieldType="VarChar" CaptionText="等级" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="left"></Column>
          <Column Field="T5" FieldType="VarChar" CaptionText="类别" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="left"></Column>
          <Column Field="T6" FieldType="VarChar" CaptionText="上存" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="Right"></Column>
          <Column Field="T7" FieldType="VarChar" CaptionText="接收" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="Right"></Column>
          <Column Field="T8" FieldType="VarChar" CaptionText="投料" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="Right"></Column>
          <Column Field="T9" FieldType="VarChar" CaptionText="结存" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="Right"></Column>
          <Column Field="T10" FieldType="VarChar" CaptionText="动态列模板" IsVirtual="True"  Width="100"  CellAlign="right" HeaderAlign="center"></Column>
          <ColumnMerges MergeRowHeader="true"/>
          <DataSource Type="Oracle" IsStore="True">
            <![CDATA[                              
               TobLeafRecordConsumption {@Search['F_Date']},{@Search['F_Date_2']},{@Search['MES_JC_WorkShopId']}
                       ]]>
          </DataSource>
          <ColumnSets>
            <Sql Type="Oracle" IsDynamic="True">
            </Sql>
            <ColumnSet>
              <Column Type="Dynamic" RefField="T10" Group="caption1"    Text="caption1" Value="asName" TextFormat="" ValueFormat=""></Column>
    
            </ColumnSet>
            <ColumnSet>
              <Column RefField="T10" Type="Dynamic"  Group="caption1" Text="caption2"  Value="asName" TextFormat="" ValueFormat="" Sort=""></Column>
            </ColumnSet>
          </ColumnSets>
          <Scripts>
            <Script>
              <![CDATA[                                 
              ]]>
            </Script>
          </Scripts>
        </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36

Group

  • 概述

    • 数据源分组字段名称
  • 示例

    <Grid Name="MES_JC_TobLeaf" UniqueNo="110200" FreezedIndex="1" HasChecked="false"  HasRowIndex="false"  HasDetail="false" AllowSort="false" AllowEdit="False" >
          <Column Field="T1" FieldType="VarChar" IsSort="true" SortOrder="asc" CaptionText="烟叶名称"  Width="100" IsVirtual="True"   HeaderAlign="center" CellAlign="left" ></Column>
          <Column Field="displayOrder" FieldType="VarChar" IsSort="true" SortOrder="asc" CaptionText="排序" IsVirtual="True"  Width="0"  HeaderAlign="center" ></Column>
          <Column Field="T2" FieldType="VarChar" CaptionText="年份" IsVirtual="True" Width="320"  HeaderAlign="center" CellAlign="center"></Column>
          <Column Field="T3" FieldType="VarChar" CaptionText="产地" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="left"></Column>
          <Column Field="T4" FieldType="VarChar" CaptionText="等级" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="left"></Column>
          <Column Field="T5" FieldType="VarChar" CaptionText="类别" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="left"></Column>
          <Column Field="T6" FieldType="VarChar" CaptionText="上存" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="Right"></Column>
          <Column Field="T7" FieldType="VarChar" CaptionText="接收" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="Right"></Column>
          <Column Field="T8" FieldType="VarChar" CaptionText="投料" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="Right"></Column>
          <Column Field="T9" FieldType="VarChar" CaptionText="结存" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="Right"></Column>
          <Column Field="T10" FieldType="VarChar" CaptionText="动态列模板" IsVirtual="True"  Width="100"  CellAlign="right" HeaderAlign="center"></Column>
          <ColumnMerges MergeRowHeader="true"/>
          <DataSource Type="Oracle" IsStore="True">
            <![CDATA[                              
               TobLeafRecordConsumption {@Search['F_Date']},{@Search['F_Date_2']},{@Search['MES_JC_WorkShopId']}
                       ]]>
          </DataSource>
          <ColumnSets>
            <Sql Type="Oracle" IsDynamic="True">
            </Sql>
            <ColumnSet>
              <Column Type="Dynamic" RefField="T10" Group="caption1"    Text="caption1" Value="asName" TextFormat="" ValueFormat=""></Column>
            </ColumnSet>
            <ColumnSet>
              <Column RefField="T10" Type="Dynamic"  Group="caption1" Text="caption2"  Value="asName" TextFormat="" ValueFormat="" Sort=""></Column>
            </ColumnSet>
          </ColumnSets>
          <Scripts>
            <Script>
              <![CDATA[          
              ]]>
            </Script>
          </Scripts>
        </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35

Sort

  • 概述

    • 排序规则
  • 示例

    <Grid Name="MES_WL_YYKeep"   HasRowIndex="False" UniqueNo="150301" Simple="true" AllowEdit="false"  HasChecked="false" HasDetail="false" EditURL="Config/Edit.aspx"  OpenType="Grid" WinWidth="700" WinHeight="300" PageSize="10000" HasPurviewFilter="false">
                  <Column Field="T1" CaptionText="月份" FieldType="DateTime" CellAlign="right"    Width="100" ></Column>
                  <Column Field="T2" CaptionText="T2" FieldType="VarChar" CellAlign="left" Width="100" ></Column>
                  <DataSource Type="Oracle" IsStore="True">
                       <![CDATA[     
                       p_wl_acttobaccorepoty '{@Request['beginTime']}','{@Request['endTime']}','{@Request['shopid']}','{@Request['typeid']}','{@Request['filterid']}'
                  ]]>
                  </DataSource>
                  <ColumnSets>
                       <Sql Type="Oracle" IsDynamic="True"></Sql>
                       <ColumnSet>
                           <Column RefField="T1" Type="Dynamic" Group="caption1" CellAlign="right"  Text="caption1" Value="asName" TextFormat="" ValueFormat="" Sort="displayorder asc"></Column>
                       </ColumnSet>
                  </ColumnSets>
         </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

value

  • 概述

    • 值字段
  • 示例

    HasRowIndex="false"  HasDetail="false" AllowSort="false" AllowEdit="False" >
          <Column Field="T1" FieldType="VarChar" IsSort="true" SortOrder="asc" CaptionText="烟叶名称"  Width="100" IsVirtual="True"   HeaderAlign="center" CellAlign="left" ></Column>
          <Column Field="displayOrder" FieldType="VarChar" IsSort="true" SortOrder="asc" CaptionText="排序" IsVirtual="True"  Width="0"  HeaderAlign="center" ></Column>
          <Column Field="T9" FieldType="VarChar" CaptionText="结存" IsVirtual="True"  Width="120"  HeaderAlign="center" CellAlign="Right"></Column>
          <Column Field="T10" FieldType="VarChar" CaptionText="动态列模板" IsVirtual="True"  Width="100"  CellAlign="right" HeaderAlign="center"></Column>
          <ColumnMerges MergeRowHeader="true"/>
          <DataSource Type="Oracle" IsStore="True">
            <![CDATA[                              
               TobLeafRecordConsumption {@Search['F_Date']},{@Search['F_Date_2']},{@Search['MES_JC_WorkShopId']} 
    
                       ]]>
          </DataSource>
          <ColumnSets>
            <Sql Type="Oracle" IsDynamic="True">
            </Sql>
            <ColumnSet>
              <Column Type="Dynamic" RefField="T10" Group="caption1"    Text="caption1" Value="asName" TextFormat="" ValueFormat=""></Column>
            </ColumnSet>
            <ColumnSet>
              <Column RefField="T10" Type="Dynamic"  Group="caption1" Text="caption2"  Value="asName" TextFormat="" ValueFormat="" Sort=""></Column>
            </ColumnSet>
          </ColumnSets>
          <Scripts>
            <Script>
              <![CDATA[          
              ]]>
            </Script>
          </Scripts>
        </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29

type

  • 概述

    • 节点类型(动态:Dynamic静态:Static)
  • 示例

    <ColumnSets>
                       <Sql Type="Oracle" IsDynamic="True"></Sql>
                       <ColumnSet>
                           <Column RefField="T1" Type="Dynamic" Group="caption1" CellAlign="right"  Text="caption1" Value="asName" TextFormat="" ValueFormat="" Sort="displayorder asc"></Column>
                       </ColumnSet>
                  </ColumnSets>
    
    1
    2
    3
    4
    5
    6

TextFormat

  • 概述

    • 对显示的列名格式化
  • 示例

    <ColumnSets>
                       <Sql Type="Oracle" IsDynamic="True"></Sql>
                       <ColumnSet>
                           <Column RefField="T1" Type="Dynamic" Group="caption1" CellAlign="right"  Text="caption1" Value="asName" TextFormat="格式" ValueFormat="" Sort="displayorder asc"></Column>
                       </ColumnSet>
                  </ColumnSets>
    
    1
    2
    3
    4
    5
    6

ValueFormat

  • 概述

    • 对生成的列名格式化
  • 示例

    <ColumnSets>
                       <Sql Type="Oracle" IsDynamic="True"></Sql>
                       <ColumnSet>
                           <Column RefField="T1" Type="Dynamic" Group="caption1" CellAlign="right"  Text="caption1" Value="asName" TextFormat="格式" ValueFormat="" Sort="displayorder asc"></Column>
                       </ColumnSet>
                  </ColumnSets>
    
    1
    2
    3
    4
    5
    6

ColumnMerges网格列合并

  • 概述
    • ColumnMerges网格列合并
<ColumnMerges MergeRowHeader="false" MergeRowHeaderHelp="是否合并点位列或者是单选列">

        <ColumnMerge Field ="字段1"/>

        <ColumnMerge Field ="字段2"/>

      </ColumnMerges>

1
2
3
4
5
6
7
8

MergeRowHeader

  • 概述
    • MergeRowHeader是否合并标题头

ColumnMerge

  • 概述

    • ColumnMerge:合并行(ColumnMerges参数)

      Field:合并行字段


网格复杂数据源配置

概述

  • 网格自定义数据源DataSource节点配置

参数

  • Type:数据库类型值:Oracle/SqlServer 注意区分大小写

    IsStore:是否存储过程

    IsComplexOracle:Oracle版的可支持多句SQL,见相关链接

    IsDynamic:是否是动态数据源(一般用于Oracle存储过程,存储过程有一个output参数用于记录缓存ConditionId

    ​ 其中:数据字段结构存到="" DynaTempColumn动态结构缓存表 数据存到DynaTempData动态数据缓存表

    IsAsView:是否当成视图来用

    TimeOut:超时秒数

    ConnName:取Web.config连接的名称

    Connection:自定义连接串

    Provider:自定义数据库类型如:System.Data.SqlClient/System.Data.OracleClient;

示例

  • 注意事项: 1.对于普通的业务,没有特殊(特殊列数据)可以不配置DataSource节点(自定义数据源)就不要配置。

    2.对于一般的业务,要求返回 主键(表名+Id),OwningUser字段(权限) 如 select '' 其它字段1,'' 其它字段2,...,t.* from tableName t 3.要过滤掉IsDeleted='1'.(逻辑删除)的数据。

    4.对于数据量大的表,最好在数据源里根据查询条件(IsVirtual="true")自定义过滤(面不是根据查询,二次过滤)。

    5.对于数据量还是很大及有特殊列数据的,可以考虑不配置自定义数据源,面是把数据源写成一个视图,并在Grid里加个View属性(对应的视图名)。

    6.对于Oracle存储过程,比较复杂的,可以用存储过程,设置。IsStore="true" IsDynamic="true",并把数据字段结构存到="" DynaTempColumn动态结构缓存表 数据存到DynaTempData动态数据缓存表

    例子1--普通列:

    <Grid Name="SysPurview"  UniqueNo="0">
                  <!--数据源-->
                  <DataSource Type="SqlServer">
                       <![CDATA[                
                       SELECT All SysMapping.Caption,P_Add                           ,P_Delete,P_Modify,P_Browse,P_Audit,P_UnAudit,P_Remark,                           P_Other,SysMapping.SysMappingId,pur.SysPurviewCacheId,
                                pur.SysUserId as SysUserId,SysMapping.SysModelId
                           FROM (SELECT * FROM SysMapping ) SysMapping
                           LEFT OUTER JOIN SysPurviewCache pur
                           ON(SysMapping.SysMappingId=pur.SysMappingId 
                                )  
                where SysMapping.isdeleted<>'1'
                           ORDER BY SysModelId,Caption Asc              
                      ]]>
                  </DataSource>
                  <DataSource Type="Oracle">
                       <![CDATA[
                       SELECT All SysMapping.Caption,P_Add                           ,P_Delete,P_Modify,P_Browse,P_Audit,P_UnAudit,P_Remark,                           P_Other,SysMapping.SysMappingId,pur.SysPurviewCacheId,
                                pur.SysUserId as SysUserId,SysMapping.SysModelId
                           FROM (SELECT * FROM SysMapping ) SysMapping
                           LEFT OUTER JOIN SysPurviewCache pur
                           ON(SysMapping.SysMappingId=pur.SysMappingId 
                                )  
                where SysMapping.isdeleted<>'1'
                           ORDER BY SysModelId,Caption Asc
                       ]]>
                  </DataSource>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26

    例子2--动态列:

    <Grid Name="MES_WL_SilkStock" UniqueNo="11100"  HasDetail="false" PageSize="20"
           <!--网格模板列-->
          <Column Field="M1"    FieldType="VarChar" CaptionText="出丝率" Width="100" HeaderAlign="center" CellAlign="center"></Column>
          <Column Field="M2"    FieldType="VarChar" CaptionText="牌号" Width="100" HeaderAlign="center" CellAlign="center"></Column>
          <!--网格数据源-->
          <!--Oracle动态列时,网格数据源要是存储过程,并有一个输出参数,用于存储缓存id-->
          <DataSource Type="Oracle" IsStore="true">
            <![CDATA[
                P_WL_ShiJiChuSiLv {{@Search['MES_WL_ManufacturingDate']}},{{@Search['MES_WL_ManufacturingDate2']}},{{@Search['CJ']}}
                  ]]>
          </DataSource>
          <!--复合列-->
          <ColumnSets>
            <!--复合列数据源-->
            <!--Oracle动态列时,只要设置IsDynamic="True" sql不用写默认为(SELECT * FROM DYNATEMPCOLUMN WHERE CONDITIONID='{0}' {1} ORDER BY DISPLAYORDER )-->
            <Sql Type="Oracle" IsDynamic="True"></Sql>
            <ColumnSet>
              <Column RefField="" Type="Dynamic" Group="caption1" Text="caption1" Value="asName" TextFormat="" ValueFormat="" Sort="displayorder asc"></Column>
            </ColumnSet>
          </ColumnSets>
        </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21

网格对象获取

  • 概述
    • 网格对象获取
  • 示例
    • var gridObj = wm.c.getGrid();

GetGrid

  • 概述

    • 这个方法已经过时,请用wm.c.getGrid()代替
  • 参数

    /*
        取得指定Id的dom对象与document.getElementById等价
        gridId:网格控件的id,类型:字符串 可选
        返回值:网格对象
    */
    GetGrid(gridId);
    
    1
    2
    3
    4
    5
    6
  • 示例

    /*
        取得当前页面的网格对象
        返回值:网格对象
    */
    var gridId=window.__gridId;
    var gridObj=GetGrid(gridId);
    var gridObj=GetGrid(); 
    
    1
    2
    3
    4
    5
    6
    7

获取所有行数

  • 概述

    • 获取网格所有行数
  • 示例

    var gridObj = wm.c.getGrid();
    var rowCount=gridObj.getRowsCount();
    
    1
    2

获取指定索引行对象

  • 概述

    • 获取指定索引行对象
  • 示例

    var gridObj = wm.c.getGrid();
    var rowObj  = gridObj.getRow(行索引)
    
    1
    2

获取指定主键值对应的行对象

  • 概述

    • 获取指定主键值对应的行对象
  • 示例

    var gridObj = wm.c.getGrid();
    var rowObj  = gridObj.getRowById(行主键值)
    
    1
    2

获取所有行

  • 概述

    • 获取所有行
  • 示例

    var gridObj = wm.c.getGrid();
    var rowObj = gridObj.getRows();
    
    1
    2

获取选中行

  • 概述

    • 获取选中行
  • 示例

    var gridObj = wm.c.getGrid();
    var rowObj=gridObj.selectedRows
    
    1
    2

获取勾选中的行

  • 概述

    • 获取勾选中的行
  • 示例

    var gridObj = wm.c.getGrid();
    var rowObj =gridObj.getCheckedRowList();
    
    1
    2

getDoRows

  • 概述

    • 获取勾选或选中行的行记录集合,并带消息提示
  • 参数

    • //isSingle:是否只能单选 true 或者 false

      getDoRows: function(isSingle){

  • 示例

    获取选中行或单选行时,有时需判断有没有勾选了记录或者只能勾选一条记录,并弹出相应的消息提示,

    那么这个时候就可以调用网格对象的 getDoRows 方法:

    自己处理的:

    function oldGet(){
        var thisGrid=wm.c.getGrid();
        var rows = thisGrid.selectedRows;
        if(rows.length <1)                  
        {
            alert("您未选择记录,请选择一行记录");
            return false;
        }
        else if(rows.length>1)
        {
          alert("请选择一行记录!");
          return;
        }
        //....接下去的处理段
    }
    
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16

    调用 getDoRows ,简化:

    function newGet(){
      var thisGrid=wm.c.getGrid();
      var rows = thisGrid.getDoRows(true);
      if(rows.length<1) return;
      //....接下去的处理段
    }
    function newGet2(){
       var thisGrid = wm.c.getGrid();
       var rows = thisGrid.getDoRows(false);
       //....接下去的处理段
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11

网格刷新

  • 概述

    • 网格刷新
  • 示例

    var gridObj = wm.c.getGrid();
    gridObj.refresh();
    
    1
    2

取所有分组集合

  • 概述

    • 取所有分组集合
  • 示例

    var gridObj = wm.c.getGrid();
    var groupObj = gridObj.getGroupRows();
    
    1
    2

获取子分组集合

  • 概述

    • 获取子分组集合
  • 示例

    var gridObj = wm.c.getGrid();
    var childGroup=gridObj.getGroupRows()[0].getChildGroupRows();
    
    1
    2

获取当前分组的行集合

  • 概述

    • 获取当前分组的行集合
  • 示例

    var gridObj = wm.c.getGrid();
    var rowObj = gridObj.getGroupRows()[0].rows;
    
    1
    2

获取所有列集合

  • 概述

    • 获取所有列集合
  • 示例

    var gridObj = wm.c.getGrid();
    var colObj= gridObj.columns;
    
    1
    2

获取指定名称列对象

  • 概述

    • 获取指定名称列对象
  • 示例

    var gridObj = wm.c.getGrid();
    var rowObj = gridObj.columns.getNamedItem(列名称);
    
    1
    2

获取行对象的所有单元格集合

  • 概述

    • 获取行对象的所有单元格集合
  • 示例

    var gridObj = wm.c.getGrid();
    var rowObj = gridObj.selectedRows;
    var cellObj = rowObj.getCells();
    
    1
    2
    3

获取行对象中指定列名称的单元格

  • 概述

    • 获取行对象中指定列名称的单元格
  • 示例

    var gridObj = wm.c.getGrid();
    var rowObj = gridObj.selectedRows;
    var cellObj = rowObj.getNamedItem(列名称) 或 rowObj.getCells().getNamedItem(列名称)
    
    
    1
    2
    3
    4

获取单元格值

  • 概述

    • 获取单元格值
  • 示例

    var gridObj = wm.c.getGrid();
    var rowObj = gridObj.selectedRows;
    var cellObj = rowObj.getNamedItem(列名称)
    var value = cellObj.getValue();
    
    1
    2
    3
    4

设置单元格值

  • 概述

    • 设置单元格值
  • 示例

    var gridObj = wm.c.getGrid();
    gridObj.getRows()[0].getCells()[0].setValue(Sum);
    
    1
    2

设定排序

  • 概述

    • 设定排序
  • 示例

    var gridObj = wm.c.getGrid();
    gridObj.sortBy(排序信息)        
    如:gridObj.sortBy(”abc desc,bcd asc”)
    
    1
    2
    3

设定分组

  • 概述

    • 设定分组
  • 示例

    var gridObj = wm.c.getGrid();
    gridObj.groupBy(列索引集合) 
    如:gridObj.groupBy([1,2,3])
    或gridObj.groupBy(1,2,3)
    gridObj.groupByName(列名集合)
    如:gridObj.groupByName ([“abc”,”bcd”,”def”])
    或gridObj.groupByName(“abc”, “bcd”, “def”)
    
    
    1
    2
    3
    4
    5
    6
    7
    8

增加行数据

  • 概述

    • 增加行数据
  • 示例

    var gridObj = wm.c.getGrid();
    gridObj._addRow(rowId,datas,index)
          说明:在指定位置,用给定的数据增加一行。
          参数:rowId èNewGuid()
                 datas       è””,””,””,””,””
                 index è行索引的位置
    gridObj.addNewRow(index,nextOrBefor)
          说明:在指定位置增加一行空行
           参数:index插入位置  nextOrBefor插入位置 不填写的时候或者填写的内容不为"before"(选中
                      行前添加)为“after"选中行后面添加
          返回:当前新增的行对象
    gridObj.addNewRowBySelected(nextOrBefor)
          说明:在网格中选中行的位置后面添加一行数据(空值行数据)
          参数:nextOrBefor插入位置 不填写的时候或者填写的内容不为"before"(选中行前添加)为“after"选中行后面添加,
          返回:当前新增的行对象
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

删除行对象

  • 概述

    • 删除行对象
  • 示例

    var gridObj = wm.c.getGrid();
    gridObj.deleteRow(rowId,rowObj)
          说明:删除指定行主键的行对象
          参数:rowId       è要删除的行主键
                 rowObj     è要删除的行对象(可为空)
    
    1
    2
    3
    4
    5

数据分组

  • 概述

    • 数据分组
  • 示例

    var gridObj = wm.c.getGrid();
    gridObj.groupBy(colIndex)
          说明:按指定的列索引的列进行分组
          参数:colIndex    è列索引
    gridObj.groupByName(colName)
          说明:按指定的列名称进行分组
          参数:colName    è列名称
    
    1
    2
    3
    4
    5
    6
    7

行移动

  • 概述

    • 行移动
  • 示例

    var gridObj = wm.c.getGrid();
    gridObj. moveRowUDTG(rowId,UniqueNo)
          说明:移动行位置
          参数:rowId       è行主键
                 UniqueNo         è1向下移 0向上移
    
    1
    2
    3
    4
    5

行升降级

  • 概述

    • 行升降级
  • 示例

    var gridObj = wm.c.getGrid();
    gridObj. rowUpLevel (rowId,UniqueNo)
          说明:更改行的层次等级
          参数:rowId       è行主键
                 UniqueNo         è1降级 0升级
    
    1
    2
    3
    4
    5

onResizeEnd

  • 概述

    • 拖动改变列大小结束时触发
  • 参数

    • gridObj:当前网格对象
  • 示例

    <Grid Name="PDM_CM_ReceiveArticleStockIn" UniqueNo="10900"  AllowEdit="False" HasChecked="True" OpenCheckedEdit="True"  HasDetail="false" EditURL="Config/Edit.aspx" OpenType="showModalDialog" WinWidth="700" WinHeight="620">
             <Column Field="ReceiveArticleStockInNO" CaptionText="入库单号" FieldType="VarChar"   Width="150" HeaderAlign="center"    />
             <Column Field="StockInDateTime" CaptionText="入库时间" FieldType="DateTime" DataFormatString="yyyy-MM-dd" Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StockInUser" CaptionText="登记人" FieldType="VarChar" ParentTable="SysUser" PTValue="SysUserId"  PTText="FullName"  Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StateCode" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="0" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="Code" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="80" HeaderAlign="center"  CellAlign="center"/>
             <DataSource Type="Oracle">
                  <![CDATA[
                  select a.Caption,a.StockInDateTime,a.StockInUser,b.caption as Code,a.StateCode,a.PDM_CM_ReceiveArticleStockInId,ReceiveArticleStockInNO
                  from PDM_CM_ReceiveArticleStockIn a       
                  left join StateCode b on a.StateCode=b.StateCodeId
                  where (a.Isdeleted is null or a.Isdeleted='0') 
                  ]]>
             </DataSource>
        <Events>     
           <Event Name="onResizeEnd" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onResize" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRightClick" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onBeforeSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRowSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onSelectStateChanged" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onEditCell" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onKeyPress" Script="Grid_onRowDblClicked"></Event>
        </Events>
        <Scripts>
          <Script>
            <![CDATA[                    
                            function Grid_onRowDblClicked()
                            {
                               var TempEntity="PDM_CM_ReceiveArticleStockIn";
                                     var TempUniqueNo="10901";
                                     var MappingId= NewAjaxRequest("User_TechWebServer","<TempEntity>"+TempEntity+"</TempEntity><TempUniqueNo>"+TempUniqueNo+"</TempUniqueNo>","GetMapping");                   
                                     var thisGrid=wm.c.getGrid();
                                     var rows = thisGrid.selectedRows;
                                     if(rows.length <1)                   
                                     {
                                         alert("您未选择记录,请选择一行记录");
                                         return false;
                                     }                                   
                                     var KeyValue=rows[0].idd;               
                                     var Url  = "Config/Edit.aspx?MappingId="+MappingId+"&id="+KeyValue+"&t="+Math.random();                        openDialog(Url,window,"DialogWidth:700px;DialogHeight:650px");                                        }
                           ]]>
          </Script>
        </Scripts>
         </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45

onResize

  • 概述

    • 拖动改变列大小时触发
  • 参数

    • colIndex:列索引

      beginW:起始大小

      gridObj:当前网格对象

  • 示例

    <Grid Name="PDM_CM_ReceiveArticleStockIn" UniqueNo="10900"  AllowEdit="False" HasChecked="True" OpenCheckedEdit="True"  HasDetail="false" EditURL="Config/Edit.aspx" OpenType="showModalDialog" WinWidth="700" WinHeight="620">
             <Column Field="ReceiveArticleStockInNO" CaptionText="入库单号" FieldType="VarChar"   Width="150" HeaderAlign="center"    />
             <Column Field="StockInDateTime" CaptionText="入库时间" FieldType="DateTime" DataFormatString="yyyy-MM-dd" Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StockInUser" CaptionText="登记人" FieldType="VarChar" ParentTable="SysUser" PTValue="SysUserId"  PTText="FullName"  Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StateCode" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="0" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="Code" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="80" HeaderAlign="center"  CellAlign="center"/>
             <DataSource Type="Oracle">
                  <![CDATA[
                  select a.Caption,a.StockInDateTime,a.StockInUser,b.caption as Code,a.StateCode,a.PDM_CM_ReceiveArticleStockInId,ReceiveArticleStockInNO
                  from PDM_CM_ReceiveArticleStockIn a       
                  left join StateCode b on a.StateCode=b.StateCodeId
                  where (a.Isdeleted is null or a.Isdeleted='0') 
                  ]]>
             </DataSource>
        <Events>     
           <!--<Event Name="onResizeEnd" Script="Grid_onRowDblClicked"></Event>-->
           <Event Name="onResize" Script="Grid_onRowDblClicked"></Event>
           <!--<Event Name="onRightClick" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onBeforeSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRowSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onSelectStateChanged" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onEditCell" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onKeyPress" Script="Grid_onRowDblClicked"></Event>-->
        </Events>
        <Scripts>
          <Script>
            <![CDATA[                    
                            function Grid_onRowDblClicked(colIndex,beginW,gridObj)
                            {
                               var TempEntity="PDM_CM_ReceiveArticleStockIn";
                                     var TempUniqueNo="10901";
                                     var MappingId= NewAjaxRequest("User_TechWebServer","<TempEntity>"+TempEntity+"</TempEntity><TempUniqueNo>"+TempUniqueNo+"</TempUniqueNo>","GetMapping");                   
                                     var thisGrid=wm.c.getGrid();
                                     var rows = thisGrid.selectedRows;
                                     if(rows.length <1)                   
                                     {
                                         alert("您未选择记录,请选择一行记录");
                                         return false;
                                     }                                   
                                     var KeyValue=rows[0].idd;               
                                     var Url  = "Config/Edit.aspx?MappingId="+MappingId+"&id="+KeyValue+"&t="+Math.random();                         openDialog(Url,window,"DialogWidth:700px;DialogHeight:650px");                                             }
                           ]]>
          </Script>
        </Scripts>
         </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45

onRightClick

  • 概述

    • 鼠标右击是触发
  • 参数

    • rowId:行主键值

      cellIndex:单元格索引

      ev:当前对象

  • 示例

    <Grid Name="PDM_CM_ReceiveArticleStockIn" UniqueNo="10900"  AllowEdit="False" HasChecked="True" OpenCheckedEdit="True"  HasDetail="false" EditURL="Config/Edit.aspx" OpenType="showModalDialog" WinWidth="700" WinHeight="620">
             <Column Field="ReceiveArticleStockInNO" CaptionText="入库单号" FieldType="VarChar"   Width="150" HeaderAlign="center"    />
             <Column Field="StockInDateTime" CaptionText="入库时间" FieldType="DateTime" DataFormatString="yyyy-MM-dd" Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StockInUser" CaptionText="登记人" FieldType="VarChar" ParentTable="SysUser" PTValue="SysUserId"  PTText="FullName"  Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StateCode" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="0" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="Code" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="80" HeaderAlign="center"  CellAlign="center"/>
             <DataSource Type="Oracle">
                  <![CDATA[
                  select a.Caption,a.StockInDateTime,a.StockInUser,b.caption as Code,a.StateCode,a.PDM_CM_ReceiveArticleStockInId,ReceiveArticleStockInNO
                  from PDM_CM_ReceiveArticleStockIn a       
                  left join StateCode b on a.StateCode=b.StateCodeId
                  where (a.Isdeleted is null or a.Isdeleted='0') 
                  ]]>
             </DataSource>
        <Events>     
           <!--<Event Name="onResizeEnd" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onResize" Script="Grid_onRowDblClicked"></Event>-->
           <Event Name="onRightClick" Script="Grid_onRowDblClicked"></Event>
           <!--<Event Name="onBeforeSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRowSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onSelectStateChanged" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onEditCell" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onKeyPress" Script="Grid_onRowDblClicked"></Event>-->
        </Events>
        <Scripts>
          <Script>
            <![CDATA[                    
                            function Grid_onRowDblClicked(rowId,cellIndex,ev)
                            {debugger
                               var TempEntity="PDM_CM_ReceiveArticleStockIn";
                                     var TempUniqueNo="10901";
                                     var MappingId= NewAjaxRequest("User_TechWebServer","<TempEntity>"+TempEntity+"</TempEntity><TempUniqueNo>"+TempUniqueNo+"</TempUniqueNo>","GetMapping");                   
                                     var thisGrid=wm.c.getGrid();
                                     var rows = thisGrid.selectedRows;
                                     if(rows.length <1)                   
                                     {
                                         alert("您未选择记录,请选择一行记录");
                                         return false;
                                     }                                   
                                     var KeyValue=rows[0].idd;               
                                     var Url  = "Config/Edit.aspx?MappingId="+MappingId+"&id="+KeyValue+"&t="+Math.random();               openDialog(Url,window,"DialogWidth:700px;DialogHeight:650px");        
                            }
                           ]]>
          </Script>
        </Scripts>
         </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46

onBeforeSelect

  • 概述

    • 行选中前触发
  • 参数

    • rowId:行主键值

      prevRowId:上一选中行主键值(第一次选择行时为0)

      evCell:当前Event对象(cell对象)

  • 示例

     <Grid Name="PDM_CM_ReceiveArticleStockIn" UniqueNo="10900"  AllowEdit="False" HasChecked="True" OpenCheckedEdit="True"  HasDetail="false" EditURL="Config/Edit.aspx" OpenType="showModalDialog" WinWidth="700" WinHeight="620">
             <Column Field="ReceiveArticleStockInNO" CaptionText="入库单号" FieldType="VarChar"   Width="150" HeaderAlign="center"    />
             <Column Field="StockInDateTime" CaptionText="入库时间" FieldType="DateTime" DataFormatString="yyyy-MM-dd" Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StockInUser" CaptionText="登记人" FieldType="VarChar" ParentTable="SysUser" PTValue="SysUserId"  PTText="FullName"  Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StateCode" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="0" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="Code" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="80" HeaderAlign="center"  CellAlign="center"/>
             <DataSource Type="Oracle">
                  <![CDATA[
                  select a.Caption,a.StockInDateTime,a.StockInUser,b.caption as Code,a.StateCode,a.PDM_CM_ReceiveArticleStockInId,ReceiveArticleStockInNO
                  from PDM_CM_ReceiveArticleStockIn a       
                  left join StateCode b on a.StateCode=b.StateCodeId
                  where (a.Isdeleted is null or a.Isdeleted='0') 
                  ]]>
             </DataSource>
        <Events>     
           <!--<Event Name="onResizeEnd" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onResize" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRightClick" Script="Grid_onRowDblClicked"></Event>-->
           <Event Name="onBeforeSelect" Script="Grid_onRowDblClicked"></Event>
           <!--<Event Name="onRowSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onSelectStateChanged" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onEditCell" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onKeyPress" Script="Grid_onRowDblClicked"></Event>-->
        </Events>
        <Scripts>
          <Script>
            <![CDATA[                    
                            function Grid_onRowDblClicked(rowId,prevRowId,evCell)
                            {
                               var TempEntity="PDM_CM_ReceiveArticleStockIn";
                                     var TempUniqueNo="10901";
                                     var MappingId= NewAjaxRequest("User_TechWebServer","<TempEntity>"+TempEntity+"</TempEntity><TempUniqueNo>"+TempUniqueNo+"</TempUniqueNo>","GetMapping");                   
                                     var thisGrid=wm.c.getGrid();
                                     var rows = thisGrid.selectedRows;
                                     if(rows.length <1)                   
                                     {
                                         alert("您未选择记录,请选择一行记录");
                                         return false;
                                     }                                   
                                     var KeyValue=rows[0].idd;               
                                     var Url  = "Config/Edit.aspx?MappingId="+MappingId+"&id="+KeyValue+"&t="+Math.random();                     openDialog(Url,window,"DialogWidth:700px;DialogHeight:650px");           
                             }
                           ]]>
          </Script>
        </Scripts>
         </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46

onRowSelect

  • 概述

    • 行选中时触发
  • 参数

    • rowId:行主键值

      cellIndex:单元格索引

  • 示例

    <Grid Name="PDM_CM_ReceiveArticleStockIn" UniqueNo="10900"  AllowEdit="False" HasChecked="True" OpenCheckedEdit="True"  HasDetail="false" EditURL="Config/Edit.aspx" OpenType="showModalDialog" WinWidth="700" WinHeight="620">
             <Column Field="ReceiveArticleStockInNO" CaptionText="入库单号" FieldType="VarChar"   Width="150" HeaderAlign="center"    />
             <Column Field="StockInDateTime" CaptionText="入库时间" FieldType="DateTime" DataFormatString="yyyy-MM-dd" Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StockInUser" CaptionText="登记人" FieldType="VarChar" ParentTable="SysUser" PTValue="SysUserId"  PTText="FullName"  Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StateCode" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="0" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="Code" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="80" HeaderAlign="center"  CellAlign="center"/>
             <DataSource Type="Oracle">
                  <![CDATA[
                  select a.Caption,a.StockInDateTime,a.StockInUser,b.caption as Code,a.StateCode,a.PDM_CM_ReceiveArticleStockInId,ReceiveArticleStockInNO
                  from PDM_CM_ReceiveArticleStockIn a       
                  left join StateCode b on a.StateCode=b.StateCodeId
                  where (a.Isdeleted is null or a.Isdeleted='0') 
                  ]]>
             </DataSource>
        <Events>     
           <!--<Event Name="onResizeEnd" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onResize" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRightClick" Script="Grid_onRowDblClicked"></Event>-->
           <!--<Event Name="onBeforeSelect" Script="Grid_onRowDblClicked"></Event>-->
           <Event Name="onRowSelect" Script="Grid_onRowDblClicked"></Event>
           <!--<Event Name="onSelectStateChanged" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onEditCell" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onKeyPress" Script="Grid_onRowDblClicked"></Event>-->
        </Events>
        <Scripts>
          <Script>
            <![CDATA[                    
                            function Grid_onRowDblClicked(rowId,cellIndex)
                            {
                               var TempEntity="PDM_CM_ReceiveArticleStockIn";
                                     var TempUniqueNo="10901";
                                     var MappingId= NewAjaxRequest("User_TechWebServer","<TempEntity>"+TempEntity+"</TempEntity><TempUniqueNo>"+TempUniqueNo+"</TempUniqueNo>","GetMapping");                   
                                     var thisGrid=wm.c.getGrid();
                                     var rows = thisGrid.selectedRows;
                                     if(rows.length <1)                   
                                     {
                                         alert("您未选择记录,请选择一行记录");
                                          return false;
                                     }                                   
                                     var KeyValue=rows[0].idd;               
                                     var Url  = "Config/Edit.aspx?MappingId="+MappingId+"&id="+KeyValue+"&t="+Math.random();                        openDialog(Url,window,"DialogWidth:700px;DialogHeight:650px");        
                            }
                           ]]>
          </Script>
        </Scripts>
         </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46

onSelectStateChanged

  • 概述

    • 选中状态改变时触发
  • 参数

    • rowId:行主键值
  • 示例

    <Grid Name="PDM_CM_ReceiveArticleStockIn" UniqueNo="10900"  AllowEdit="False" HasChecked="True" OpenCheckedEdit="True"  HasDetail="false" EditURL="Config/Edit.aspx" OpenType="showModalDialog" WinWidth="700" WinHeight="620">
             <Column Field="ReceiveArticleStockInNO" CaptionText="入库单号" FieldType="VarChar"   Width="150" HeaderAlign="center"    />
             <Column Field="StockInDateTime" CaptionText="入库时间" FieldType="DateTime" DataFormatString="yyyy-MM-dd" Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StockInUser" CaptionText="登记人" FieldType="VarChar" ParentTable="SysUser" PTValue="SysUserId"  PTText="FullName"  Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StateCode" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="0" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="Code" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="80" HeaderAlign="center"  CellAlign="center"/>
             <DataSource Type="Oracle">
                  <![CDATA[
                  select a.Caption,a.StockInDateTime,a.StockInUser,b.caption as Code,a.StateCode,a.PDM_CM_ReceiveArticleStockInId,ReceiveArticleStockInNO
                  from PDM_CM_ReceiveArticleStockIn a       
                  left join StateCode b on a.StateCode=b.StateCodeId
                  where (a.Isdeleted is null or a.Isdeleted='0') 
                  ]]>
             </DataSource>
        <Events>     
           <!--<Event Name="onResizeEnd" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onResize" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRightClick" Script="Grid_onRowDblClicked"></Event>-->
           <!--<Event Name="onBeforeSelect" Script="Grid_onRowDblClicked"></Event>-->
           <!--<Event Name="onRowSelect" Script="Grid_onRowDblClicked"></Event>-->
           <Event Name="onSelectStateChanged" Script="Grid_onRowDblClicked"></Event>
           <!--<Event Name="onEditCell" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onKeyPress" Script="Grid_onRowDblClicked"></Event>-->
        </Events>
        <Scripts>
          <Script>
            <![CDATA[                    
                             function Grid_onRowDblClicked(rowId)
                            {
                               var TempEntity="PDM_CM_ReceiveArticleStockIn";
                                     var TempUniqueNo="10901";
                                     var MappingId= NewAjaxRequest("User_TechWebServer","<TempEntity>"+TempEntity+"</TempEntity><TempUniqueNo>"+TempUniqueNo+"</TempUniqueNo>","GetMapping");                   
                                     var thisGrid=wm.c.getGrid();
                                     var rows = thisGrid.selectedRows;
                                     if(rows.length <1)                   
                                     {
                                         alert("您未选择记录,请选择一行记录");
                                         return false;
                                     }                                   
                                     var KeyValue=rows[0].idd;               
                                     var Url  = "Config/Edit.aspx?MappingId="+MappingId+"&id="+KeyValue+"&t="+Math.random();               openDialog(Url,window,"DialogWidth:700px;DialogHeight:650px");        
                            }
                           ]]>
          </Script>
        </Scripts>
         </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46

onEditCell

  • 概述

    • 单元格编辑时触发
  • 参数

    • flag: (0:编辑前,1:值改变时,2:编辑后)

      rowId:行主键值

      cellIndex:单元格索引

      value:单元格的值

      val:

  • 示例

     <Grid Name="PDM_CM_ReceiveArticleStockIn" UniqueNo="10900"  AllowEdit="False" HasChecked="True" OpenCheckedEdit="True"  HasDetail="false" EditURL="Config/Edit.aspx" OpenType="showModalDialog" WinWidth="700" WinHeight="620">
             <Column Field="ReceiveArticleStockInNO" CaptionText="入库单号" FieldType="VarChar"   Width="150" HeaderAlign="center"    />
             <Column Field="StockInDateTime" CaptionText="入库时间" FieldType="DateTime" DataFormatString="yyyy-MM-dd" Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StockInUser" CaptionText="登记人" FieldType="VarChar" ParentTable="SysUser" PTValue="SysUserId"  PTText="FullName"  Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StateCode" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="0" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="Code" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="80" HeaderAlign="center"  CellAlign="center"/>
             <DataSource Type="Oracle">
                  <![CDATA[
                  select a.Caption,a.StockInDateTime,a.StockInUser,b.caption as Code,a.StateCode,a.PDM_CM_ReceiveArticleStockInId,ReceiveArticleStockInNO
                  from PDM_CM_ReceiveArticleStockIn a       
                  left join StateCode b on a.StateCode=b.StateCodeId
                  where (a.Isdeleted is null or a.Isdeleted='0') 
                  ]]>
             </DataSource>
        <Events>     
           <!--<Event Name="onResizeEnd" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onResize" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRightClick" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onBeforeSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRowSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onSelectStateChanged" Script="Grid_onRowDblClicked"></Event>-->
           <Event Name="onEditCell" Script="Grid_onRowDblClicked"></Event>
           <!--<Event Name="onKeyPress" Script="Grid_onRowDblClicked"></Event>-->
        </Events>
        <Scripts>
          <Script>
            <![CDATA[                    
                            function Grid_onRowDblClicked(flag,rowId,cellIndex,value,val)
                            {
                               var TempEntity="PDM_CM_ReceiveArticleStockIn";
                                     var TempUniqueNo="10901";
                                     var MappingId= NewAjaxRequest("User_TechWebServer","<TempEntity>"+TempEntity+"</TempEntity><TempUniqueNo>"+TempUniqueNo+"</TempUniqueNo>","GetMapping");                   
                                     var thisGrid=wm.c.getGrid();
                                     var rows = thisGrid.selectedRows;
                                     if(rows.length <1)                   
                                     {
                                         alert("您未选择记录,请选择一行记录");
                                         return false;
                                     }                                   
                                     var KeyValue=rows[0].idd;               
                                     var Url  = "Config/Edit.aspx?MappingId="+MappingId+"&id="+KeyValue+"&t="+Math.random();           
        openDialog(Url,window,"DialogWidth:700px;DialogHeight:650px");        
                            }
                           ]]>
          </Script>
        </Scripts>
         </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47

onKeyPress

  • 概述

    • 键盘按下按键时触发
  • 参数

    • keyCode:按键值

      ctrlKey:是否按下Ctrl键

      shiftKey:是否按下Shift键

      ev:当前

  • 示例

     <Grid Name="PDM_CM_ReceiveArticleStockIn" UniqueNo="10900"  AllowEdit="False" HasChecked="True" OpenCheckedEdit="True"  HasDetail="false" EditURL="Config/Edit.aspx" OpenType="showModalDialog" WinWidth="700" WinHeight="620">
             <Column Field="ReceiveArticleStockInNO" CaptionText="入库单号" FieldType="VarChar"   Width="150" HeaderAlign="center"    />
             <Column Field="StockInDateTime" CaptionText="入库时间" FieldType="DateTime" DataFormatString="yyyy-MM-dd" Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StockInUser" CaptionText="登记人" FieldType="VarChar" ParentTable="SysUser" PTValue="SysUserId"  PTText="FullName"  Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StateCode" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="0" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="Code" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="80" HeaderAlign="center"  CellAlign="center"/>
             <DataSource Type="Oracle">
                  <![CDATA[
                  select a.Caption,a.StockInDateTime,a.StockInUser,b.caption as Code,a.StateCode,a.PDM_CM_ReceiveArticleStockInId,ReceiveArticleStockInNO
                  from PDM_CM_ReceiveArticleStockIn a       
                  left join StateCode b on a.StateCode=b.StateCodeId
                  where (a.Isdeleted is null or a.Isdeleted='0') 
                  ]]>
             </DataSource>
        <Events>     
           <!--<Event Name="onResizeEnd" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onResize" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRightClick" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onBeforeSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRowSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onSelectStateChanged" Script="Grid_onRowDblClicked"></Event>-->
           <!--<Event Name="onEditCell" Script="Grid_onRowDblClicked"></Event>-->
           <Event Name="onKeyPress" Script="Grid_onRowDblClicked"></Event>
        </Events>
        <Scripts>
          <Script>
            <![CDATA[                    
                            function Grid_onRowDblClicked(keyCode,ctrlKey,shiftKey,ev)
                            {
                               var TempEntity="PDM_CM_ReceiveArticleStockIn";
                                     var TempUniqueNo="10901";
                                     var MappingId= NewAjaxRequest("User_TechWebServer","<TempEntity>"+TempEntity+"</TempEntity><TempUniqueNo>"+TempUniqueNo+"</TempUniqueNo>","GetMapping");                   
                                     var thisGrid=wm.c.getGrid();
                                     var rows = thisGrid.selectedRows;
                                     if(rows.length <1)                   
                                     {
                                         alert("您未选择记录,请选择一行记录");
                                          return false;
                                     }                                   
                                     var KeyValue=rows[0].idd;               
                                     var Url  = "Config/Edit.aspx?MappingId="+MappingId+"&id="+KeyValue+"&t="+Math.random();           
         openDialog(Url,window,"DialogWidth:700px;DialogHeight:650px");        
                            }
                           ]]>
          </Script>
        </Scripts>
         </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47

__onUserBeforeSelect

  • 概述

    • 网格行选中事件前触发
  • 参数

    • 参数:rowId è行主键

      prevRowIdè上一选中行主键值(第一次选择行时为0)

      evCell è当前Event对象(cell对象)

  • 示例

    实例说明:此方法通常用于选中网格时对从网格添加用户自定义的参数 ​ 功能:刷新页面增加数据源获取Request参数 用法:类似于保存前保存后事件方法 return true 刷新从网格页面 return false 不刷新从网格页面

    例子如:

    function __onUserBeforeSelect(rowId,prevRowId)
    {
    var grid = wm.c.getGrid();
        var row = grid.getRowById(rowId);
        if(row!=null){
    var ad = row.getNamedItem("MES_WL_AccountingDate").getValue().replace(/(^\s*)|(\s*$)/g,"");
    var ws = row.getNamedItem("MES_JC_WorkShopId").getValue().replace(/(^\s*)|(\s*$)/g,"");
    var wp = row.getNamedItem("MES_JC_WIPId").getValue().replace(/(^\s*)|(\s*$)/g,"");
            var thisFrame = window.document.frames[0];
    thisFrame.GridChildRefresh('MES_WL_AccountingDate',ad);
    thisFrame.GridChildRefresh('MES_JC_WorkShopId',ws);             thisFrame.GridChildRefresh('MES_JC_WIPId',wp);
    return true;
    }
    return false;
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

onTab

  • 概述

    • 按下Tab键时触发
  • 参数

    • isShiftKey:是否同时按下Shift
  • 示例

    <Events>
            <Event Name="onTab" Script="MyTab">
            </Event>
          </Events>
          <Scripts>
            <Script>
              <![CDATA[
             function MyTab()
             {  
             }
              ]]>
            </Script>
          </Scripts>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

onXLE

  • 概述

    • 网格加载完成时触发
  • 参数

    • gridObj:当前网格对象
  • 示例

     <Events>
            <Event Name="onXLE" Script="MyXLE">
            </Event>
          </Events>
          <Scripts>
            <Script>
                 <![CDATA[
             function MyXLE(gridObj)
             {
               var grid=gridObj;
             }
              ]]></Script>
          </Scripts>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

onAfterRefresh

  • 概述

    • 刷新后触发
  • 参数

    • gridObj:当前网格对象
  • 示例

    <Events>
            <Event Name="onAfterRefresh" Script="MyAfterRefresh">
            </Event>
          </Events>
          <Scripts>
            <Script>
                 <![CDATA[
             function MyAfterRefresh(gridObj)
             {
               var grid=gridObj;
             }
              ]]></Script>
          </Scripts>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

onRowAdded

  • 概述

    • 行添加时触发
  • 参数

    • rowId:行主键值
  • 示例

    <Events>
            <Event Name="onRowAdded" Script="MyRowAdded">
            </Event>
          </Events>
          <Scripts>
            <Script>
              <![CDATA[
             function MyRowAdded(rowId)
             { 
               var row_Id=rowId;
             }
              ]]>
            </Script>
          </Scripts>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14

onEnter

  • 概述

    • 按下回车键时触发
  • 参数

    • rowId:行主键值

      cellIndex:单元格索引

  • 示例

    <Events>
            <Event Name="onEnter" Script="MyEnter">
            </Event>
          </Events>
          <Scripts>
            <Script>
                 <![CDATA[
             function MyEnter(rowId,cellIndex)
             {
             }
              ]]></Script>
          </Scripts>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12

onMouseOver

  • 概述

    • 鼠标离开时触发
  • 参数

    • rowId:行主键值

      cellIndex:单元格索引

  • 示例

    <Events>
            <Event Name="onMouseOver" Script="MyMouseOver">
            </Event>
          </Events>
          <Scripts>
            <Script>
                 <![CDATA[
             function MyMouseOver(rowId,cellIndex)
             {
             }
              ]]></Script>
          </Scripts>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12

onRowCreated

  • 概述

    • 行创建时触发
  • 参数

    • rowId:行主键值

      rowObj:行对象

  • 示例

    <Events>
            <Event Name="onRowCreated" Script="MyRowCreated">
            </Event>
          </Events>
          <Scripts>
            <Script>
              <![CDATA[
             function MyRowCreated(rowId,rowObj)
             {  
             }
              ]]>
            </Script>
          </Scripts>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

onHeaderClick

  • 概述

    • 列标题头单击时触发
  • 参数

    • colIndex:列索引

      ev:当前对象

  • 示例

    <Events>
            <Event Name="onHeaderClick" Script="MyHeaderClick">
            </Event>
          </Events>
          <Scripts>
            <Script>
              <![CDATA[
             function MyHeaderClick(colIndex,ev)
             {  
             }
              ]]>
            </Script>
          </Scripts>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

onRowDblClicked

  • 概述

    • 行双击时触发
  • 参数

    • rowId:行主键值

      cellIndex:单元格索引

  • 示例

    <Events>
            <Event Name="onRowDblClicked" Script="MyRowDblClicked">
            </Event>
          </Events>
          <Scripts>
            <Script>
                 <![CDATA[
             function MyRowDblClicked(rowId,cellIndex)
             {
             }
              ]]></Script>
          </Scripts>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12

onBeforeRowDeleted

  • 概述

    • 行删除前触发
  • 参数

    • rowId:行主键值
  • 示例

    <Events>
            <Event Name="onBeforeRowDeleted" Script="MyBeforeRowDeleted">
            </Event>
          </Events>
          <Scripts>
            <Script>
                 <![CDATA[
             function MyBeforeRowDeleted(id)
             {
               //其删除事件调用wm.c.getGrid().deleteSelectedRows()删除行,需注意。
             }
              ]]></Script>
          </Scripts>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

onAfterRowDeleted

  • 概述

    • 行删除后触发
  • 参数

    • rowId:行主键值

      pId:上级仅当网格为树状呈现时有效

  • 示例

    <Events>
            <Event Name="onAfterRowDeleted " Script="MyAfterRowDeleted">
            </Event>
          </Events>
          <Scripts>
            <Script>
                 <![CDATA[
             function MyAfterRowDeleted(id)
             {
               //其删除事件调用wm.c.getGrid().deleteSelectedRows()删除行,需注意。
             }
              ]]></Script>
          </Scripts>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

onBeforeSorting

  • 概述

    • 列排序前触发
  • 参数

    • colIndex:列索引

      fldSort:原始排序数据

      sortType:(asc|desc)

  • 示例

    • 只有在非网格服务器排序模式下,方可触发。

onAfterSorting

  • 概述

    • 排序后触发
  • 参数

    • colIndex:列索引

      type:排序数据

      order:顺序

  • 示例

    只有在非网格服务器排序模式下,方可触发。


onScroll

  • 概述

    • 网格滚动条滚动时触发
  • 参数

    • scrollLeft:左边距

      scrollTop:右边距

  • 示例

    <Grid Name="PDM_CM_ReceiveArticleStockIn" UniqueNo="10900"  AllowEdit="False" HasChecked="True" OpenCheckedEdit="True"  HasDetail="false" EditURL="Config/Edit.aspx" OpenType="showModalDialog" WinWidth="700" WinHeight="620">
             <Column Field="ReceiveArticleStockInNO" CaptionText="入库单号" FieldType="VarChar"   Width="150" HeaderAlign="center"    />
             <Column Field="StockInDateTime" CaptionText="入库时间" FieldType="DateTime" DataFormatString="yyyy-MM-dd" Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StockInUser" CaptionText="登记人" FieldType="VarChar" ParentTable="SysUser" PTValue="SysUserId"  PTText="FullName"  Width="120" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="StateCode" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="0" HeaderAlign="center"  CellAlign="center"/>
             <Column Field="Code" CaptionText="状态" FieldType="VarChar" IsDictionary="true"  Width="80" HeaderAlign="center"  CellAlign="center"/>
             <DataSource Type="Oracle">
                  <![CDATA[
                  select a.Caption,a.StockInDateTime,a.StockInUser,b.caption as Code,a.StateCode,a.PDM_CM_ReceiveArticleStockInId,ReceiveArticleStockInNO
                  from PDM_CM_ReceiveArticleStockIn a       
                  left join StateCode b on a.StateCode=b.StateCodeId
                  where (a.Isdeleted is null or a.Isdeleted='0') 
                  ]]>
             </DataSource>
        <Events>     
           <!--<Event Name="onResizeEnd" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onResize" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRightClick" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onBeforeSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onRowSelect" Script="Grid_onRowDblClicked"></Event>
           <Event Name="onSelectStateChanged" Script="Grid_onRowDblClicked"></Event>-->
           <!--<Event Name="onEditCell" Script="Grid_onRowDblClicked"></Event>-->
           <Event Name="onscroll" Script="Grid_onRowDblClicked"></Event>
        </Events>
        <Scripts>
          <Script>
            <![CDATA[                    
                            function Grid_onRowDblClicked(scrollLeft,scrollTop)
                            {debugger
                               var TempEntity="PDM_CM_ReceiveArticleStockIn";
                                     var TempUniqueNo="10901";
                                     var MappingId= NewAjaxRequest("User_TechWebServer","<TempEntity>"+TempEntity+"</TempEntity><TempUniqueNo>"+TempUniqueNo+"</TempUniqueNo>","GetMapping");                   
                                    var thisGrid=wm.c.getGrid();
                                     var rows = thisGrid.selectedRows;
                                     if(rows.length <1)                   
                                     {
                                         alert("您未选择记录,请选择一行记录");
                                         return false;
                                     }                                   
                                     var KeyValue=rows[0].idd;               
                                     var Url  = "Config/Edit.aspx?MappingId="+MappingId+"&id="+KeyValue+"&t="+Math.random();               openDialog(Url,window,"DialogWidth:700px;DialogHeight:650px");        
                            }
                           ]]>
          </Script>
        </Scripts>
         </Grid>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46

__WebGridDownload

  • 概述

    • 网格附件下载功能
  • 示例

    • 使用方法:

      通过调用/Common.js下的__WebGridDownlod() 如果只有一个附件就直接下载,有多个附件跳出列表选择下载


addXMLInput

  • 概述

    • 添加大数据参数到后台(后台可以通过用Request伪变量获取)
  • 参数

  - /*

    ​    添加大数据参数到后台(后台可以通过用Request伪变量获取)

    ​    name:参数名,类型:字符串必需 

    ​    value:参数值,类型:字符串必需

    ​    返回值:无

    */

    `gridObj.addXMLInput(name, value);`
1
2
3
4
5
6
7
8
9
10
11
12
13
  • 示例

    /*
        添加xml大数据参数到后台(后台可以通过用Request伪变量获取)
        返回值:无
    */
    var gridObj=GetGrid();
    var name="对弈参数名";
    var value="<root><Column></Column></root>";
    gridObj.addXMLInput(name,value);
    //数据源配置中可通过{@Request['对应参数名']}获取值
    
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10

addReportXML

  • 概述

    • 为网格通用寻出添加一些自定义样式设置(如隐藏某一列,改列名,设置宽度等)常用写在通用网格导出前事件(__WebExportBefore)里
  • 参数

  - /*

    ​    为网格通用寻出添加一些自定义样式设置(如隐藏某一列,改列名,设置宽度等)常用写在通用网格导出前事件(__WebExportBefore)里

    ​    value:参数值,类型:xml字符串 必需 格式(与grid配置相似):'<Grid><Column  Field="字段" Width="宽度"></Column></Grid>'

    ​    返回值:无

    */

    `gridObj.addReportXML(value);`
1
2
3
4
5
6
7
8
9
10
11
  • 示例

    /*
        为网格通用寻出添加一些自定义样式设置(如隐藏某一列,改列名,设置宽度等)常用写在通用网格导出前事件(__WebExportBefore)里
        返回值:无
    */
    var gridObj=GetGrid();
    var value='<Grid><Column Field="myColumn" Width="0"></Column></Grid>';
    gridObj.addReportXML(value);
    
    1
    2
    3
    4
    5
    6
    7

addGridConfigXML

  • 概述

    • 动态改变网格节点的配置信息 生成前(如隐藏某一列,改列名,设置宽度等)
  • 参数

  - /*

    ​    动态改变网格节点的配置信息  生成前(如隐藏某一列,改列名,设置宽度等)

    ​    value:参数值,类型:xml字符串 必需 格式(与grid配置相似):'<Grid><Column  Field="字段" Width="宽度"></Column></Grid>'

    ​    返回值:无

    */

    `gridObj.addGridConfigXML(value);`
1
2
3
4
5
6
7
8
9
10
11
  • 示例
  /*
      动态改变网格节点的配置信息 生成前(如隐藏某一列,改列名,设置宽度等)
      返回值:无
  */
  var gridObj=GetGrid();
  var value='<Grid><Column Field="myColumn" Width="0"></Column></Grid>';
  gridObj.addGridConfigXML(value);
1
2
3
4
5
6
7

addGridChangeXML

  • 概述

    • 动态改变网格生成后的XML节点信息生成后(如隐藏某一列,改列名,设置宽度等)
  • 参数

  - /*

    ​    动态改变网格生成后的XML节点信息生成后(如隐藏某一列,改列名,设置宽度等)

    ​    value:参数值,类型:xml字符串 必需 格式(与grid配置相似):'<Grid><Column  Field="字段" Width="宽度"></Column></Grid>'

    ​    返回值:无

    */

    `gridObj.addGridChangeXML(value);`
1
2
3
4
5
6
7
8
9
10
11
  • 示例
  /*
      动态改变网格生成后的XML节点信息生成后(如隐藏某一列,改列名,设置宽度等)
      返回值:无
  */
  var gridObj=GetGrid();
  var value='<Grid><Column Field="myColumn" Width="0"></Column></Grid>';
  gridObj.addGridChangeXML(value);
1
2
3
4
5
6
7

setPageInfo

  • 概述

    • 设置网格页面标题(在页面最顶部) 如果vluae为空,则隐藏这一行内容,否则显示这行一内容
  • 参数

  - /*

    ​    设置网格页面标题(在页面最顶部)  如果vluae为空,则隐藏这一行内容,否则显示这行一内容

    ​    value:显示的html内容,类型:字符串 必需

    ​    返回值:网格页面标题对应的td容器对象

    */

    `var  obj=gridObj.setPageInfo(value);`
1
2
3
4
5
6
7
8
9
10
11
  • 示例
  /*
      设置网格页面标题(在页面最顶部) 如果vluae为空,则隐藏这一行内容,否则显示这行一内容
      返回值:网格页面标题对应的td容器对象
  */
  var gridObj=GetGrid();
  var value='<h2>网格页面标题</h2>';
  var obj=gridObj.setPageInfo(value);
1
2
3
4
5
6
7

setGridTitleInfo

  • 概述

    • 设置网格标题(在网格顶部) 如果vluae为空,则隐藏这一行内容,否则显示这行一内容
  • 参数

  - /*

    ​    设置网格标题(在网格顶部)  如果vluae为空,则隐藏这一行内容,否则显示这行一内容

    ​    value:显示的html内容,类型:字符串 必需

    ​    返回值:网格标题对应的td容器对象

    */

    `var  obj=gridObj.setGridTitleInfo(value);`
1
2
3
4
5
6
7
8
9
10
11
  • 示例

    /*
        设置网格标题(在网格顶部) 如果vluae为空,则隐藏这一行内容,否则显示这行一内容
        返回值:网格说明对应的td容器对象
    */
    var gridObj=GetGrid();
    var value='<h2>网格标题</h2>';
    var obj=gridObj.setGridTitleInfo(value);
    
    1
    2
    3
    4
    5
    6
    7

setGridDescInfo

  • 概述

    • 设置网格说明(在网格底部) 如果vluae为空,则隐藏这一行内容,否则显示这行一内容
  • 参数

  - /*

    ​    设置网格说明(在网格底部)  如果vluae为空,则隐藏这一行内容,否则显示这行一内容

    ​    value:显示的html内容,类型:字符串 必需

    ​    返回值:网格标题对应的td容器对象

    */

    `var  obj=gridObj.setGridDescInfo(value);`
1
2
3
4
5
6
7
8
9
10
11
  • 示例

    /*
        设置网格说明(在网格底部) 如果vluae为空,则隐藏这一行内容,否则显示这行一内容
        返回值:网格说明对应的td容器对象
    */
    var gridObj=GetGrid();
    var value='<div>网格说明</div>';
    var obj=gridObj.setGridDescInfo(value);
    
    1
    2
    3
    4
    5
    6
    7

chooseColumn

  • 概述

    • 弹出用户选择显示列对话框 (设置addGridConfigXML来并刷新实现网格的动态隐藏)
  • 参数

  - /*

    ​    弹出用户选择显示列对话框 (设置addGridConfigXML来并刷新实现网格的动态隐藏)

    ​    返回值:无

    */

    gridObj.chooseColumn();
1
2
3
4
5
6
7
8
9
  • 示例

    /*
        弹出用户选择显示列对话框 (设置addGridConfigXML来并刷新实现网格的动态隐藏)
        返回值:无
    */
    var gridObj=GetGrid();
    gridObj.chooseColumn();
    
    1
    2
    3
    4
    5
    6

mergeByRC

  • 概述

    • 手动调用根据网格的数据的#rspan,#cspan动态合并网格的行列
  • 参数

  - /*

    ​    手动调用根据网格的数据的#rspan,#cspan动态合并网格的行列

    ​    返回值:无

    */

    `gridObj.mergeByRC();`
1
2
3
4
5
6
7
8
9
  • 示例

    /*
        手动调用根据网格的数据的#rspan,#cspan动态合并网格的行列
        返回值:无
    */
    var gridObj=GetGrid();
    gridObj.mergeByRC();
    
    1
    2
    3
    4
    5
    6

getDoRows

  • 概述

    • 获取勾选或选中的数据,并带消息提示
  • 参数

  - /*

    ​    获取勾选或选中的数据,并带消息提示

    ​    isSingle:是否单选,类型:bool 可选 默认:false

    ​    返回值:行对象集合

    */

    `gridObj.getDoRows(isSingle);`
1
2
3
4
5
6
7
8
9
10
11
  • 示例

    /*
        获取勾选或选中的数据,并带消息提示
        返回值:行对象集合
    */
    var gridObj=GetGrid();
    var rows=gridObj.getDoRows(isSingle);
    
    1
    2
    3
    4
    5
    6

获取网格旧值

  • 概述

    • 取得网格可编辑列修改之前的值
  • 示例

    var grid=wm.c.getGrid();    
    var Title=grid.getRows()[2].getNamedItem("Title").cell.defaultValue;
    
    1
    2

网格排序设置

  • 概述

    • 在Common.js里有个方法(__showGridSortPage())供调用,调用方法时,弹出排序设置页面,左右选,排序为升序,降序。点确定时,将设置的排序先后顺序进行字段排序,排序的结果显示到原先网格上。
  • 示例

    • 工具栏配置:

      <Button Target="Grid" Name="cmd排序设置" Text="排序设置" ToolTip="排序设置" Type="Normal" Image="WebToolBar/16_look.gif" 
                      DisplayMode="TextAndImage" Script="wm.c.showGridSortPage()"></Button>
      
      1
      2

      设置页面(左右选页面,点确定时,将设置的排序先后顺序进行字段排序,排序的结果显示到原先网格上):

      GridOrder1

      ​ 网格效果:

      GridOrder2