ComponentArt.web.ui中文帮助之Grid(六)
ComponentArt Grid触发和处理服务器端事件
ComponentArt Grid的一个重要特征是它能够触发服务器端事件。为了充分发挥他的优势,适当的响应这些事件是至关重要的。这篇文章提供了服务器端事件的概述,同时也是一系列典型应用实例
下面是服务器事件的列表以及相应的类定义,版本3.0
事件 |
EventArgs |
意义 |
ColumnReorder |
GridColumnReorderEventArgs |
一个列的位置在显示顺序中发生变化 |
DeleteCommand |
GridItemEventArgs |
行被删除 |
FilterCommand |
GridFilterCommandEventArgs |
产生一个服务器端过滤请求 |
GroupCommand |
GridGroupCommandEventArgs |
产生一个服务器端分组请求 |
InsertCommand |
GridItemEventArgs |
插入新行 |
ItemCheckChanged |
GridItemCheckChangedEventArgs |
Checkbox类型的列的选择状态变化 |
ItemCommand |
GridItemCommandEventArgs |
服务器模板中的控件导致的回传 |
ItemDataBound |
GridItemDataBoundEventArgs |
一个服务器模板被莫行示例化 |
NeedRebind |
EventArgs |
表格需要重新绑定到它的数据源 |
NeedDataSource |
EventArgs |
数据源需要更新 |
PageIndexChanged |
GridPageIndexChangedEventArgs |
一个新的页请求 |
Scroll |
GridScrollEventArgs |
一个卷轴滚动请求 |
SelectCommand |
GridItemEventArgs |
行被选择 |
SortCommand |
GridSortCommandEventArgs |
产生一个服务器端排序请求 |
UpdateCommand |
GridItemEventArgs |
行被编辑 |
新页(页改变)请求事件
解释服务器端事件的产生和处理,我们从最基本的例子开始:PageIndexChanged。这个事件表示使用表格分页系统的一个简单请求。除非手工分页请求(通过设置ManualPaging为true),只有必须的动作可以改变表格的CurrentPageIndex来匹配一个请求。下面是我们怎样定义事件处理
public void Grid1_PageIndexChanged
(object sender, ComponentArt.Web.UI.GridPageIndexChangedEventArgs args)
{
Grid1.CurrentPageIndex = args.NewIndex;
}
这样我们可以建立事件处理的委托
private void InitializeComponent()
{
...
Grid1.PageIndexChanged += new
ComponentArt.Web.UI.Grid.PageIndexChangedEventHandler(Grid1_PageIndexChanged);
}
选择事件
另一个常用例子是包含关联表行的事件:SelectCommand。这个事件在一个表格行被选时产生,一个回传产生。与事件关联的只有已经选择的行的数据
要想当一行被选中时产生这个事件,我们必须先设置表格控件的AutoPostBackOnSelect为true
<ComponentArt:Grid runat="server" ID="Grid1" AutoPostBackOnSelect="true" ...>
...
</ComponentArt:Grid>
然后,在后置代码中,我们定义SelectCommand事件委托和事件处理程序
private void Grid1_SelectCommand(object sender, ComponentArt.Web.UI.GridItemEventArgs args)
{
Response.Write("Selected item: " + args.Item["ID"] + "<br />"n");
}
private void InitializeComponent()
{
...
Grid1.SelectCommand +=
new ComponentArt.Web.UI.Grid.GridItemEventHandler(Grid1_SelectCommand);
}
给表格添加右键菜单
ComponentArt Grid提供与ComponentArt Menu的无缝结合来创建智能右键菜单。表格和菜单交换关于选定表格行和他的状态的信息。OnContextMenu 属性指定了产生客户端菜单的子程序.
如下图,菜单操作包括编辑、删除、插入行等。每一个菜单行调用客户端函数来设置表格属性和调用表格方法
添加右键菜单
1.添加ComponentArt Grid(Grid1)到页面,设置表格为客户端运行模式
2.在表格属性页,设置OnContextMenu属性为ShowContextMenu。ShowContextMenu是你添加在并发步骤中的客户端函数
3.添加ComponentArt Menu(Menu1)到页面。设置页面属性如下
Property Value
ContextMenu Custom
Orientation Vertical
4.在HTML视图,在</head>标签前,添加客户端JavaScript如下。ShowContextMenu函数在右键单击表格。这个程序选择右键点击的行,显示菜单,传递选定行的信息到ContextData 属性设定的菜单
<script type="text/javascript" language="javascript">
function ShowContextMenu(item, column, evt)
{
Grid1.Select(item);
Menu1.ShowContextMenu(evt);
Menu1.ContextData = item;
return false;
}
</script>
5.在</ComponentArt:Menu>结束标记前,添加下面的标记添加行到菜单。
注意,每行包含ClientSideCommand属性值
前三行指出了由ComponentArt Grid自动产生的客户端函数。当表格打开菜单时,Edit 和Delete菜单行传回菜单得到的上下文信息。第四行(Exit)执行一行简单的JavaScript脚本来关闭右键菜单
<Items>
<ComponentArt:MenuItem Text="Edit Row"
ClientSideCommand="Grid1.Edit(GridContextMenu.ContextData);" />
<ComponentArt:MenuItem Text="Delete Row"
ClientSideCommand="Grid1.Delete(GridContextMenu.ContextData);" />
<ComponentArt:MenuItem Text="Insert New Row"
ClientSideCommand="Grid1.Table.AddRow()" />
<ComponentArt:MenuItem Text="Exit"
ClientSideCommand="function donthng(){return false;}" />
</Items>
6.编译执行页面,右键点击某行。右键菜单产生.当你点击一行时执行指派的客户端命令
注意:参考"live_examples"grid"features"grid_contextMenu"右键菜单的例子,包括类型,图片,回传数据库等
转载于:https://www.cnblogs.com/xiaozhuoyun/archive/2007/10/19/930859.html
ComponentArt.web.ui中文帮助之Grid(六)相关推荐
- Kendo Web UI Grid数据绑定,删除,编辑,并把默认英文改成中文
Kendo Web UI 是个不错的Jquery框.可惜老外写的,很多都是默认的英文,当然我们也可以设置成中文,接下来,我们就看看Grid是如何实现的数据绑定(Kendo Grid数据绑定实现有很多方 ...
- Web UI 制作规范
一. Web 目录结构规范: 目录建立的原则:以最少的层次提供最清晰简便的访问结构. 目录的命名以小写英文字母,下划线组成. 根目录一般只存放index.htm以及其他必须的系统文件 根目录下的p_w ...
- 国际化分布式WEB UI自动化测试平台搭建
国际化分布式WEB UI自动化平台 一 背景 二 特色功能 三 系统架构设计&框架选型 自动化测试框架 Selenium WebDriver Selenium Grid 四 功能介绍 平台化 ...
- Ubuntu安装OSSEC和OSSEC Web UI
Ubuntu安装OSSEC和OSSEC Web UI 一.安装环境 二.配置安装依赖项 1. OSSEC依赖包 2. 安装Apache并更新防火墙 调整防火墙以允许Web通信 3. 安装PHP 三.下 ...
- 基于Selenium与Pytest框架的Web UI自动化测试系统的设计与实现
摘要 随着互联网的高速发展,软件技术日新月异,产品更新换代的加快等,始终都离不开一个最核心的要素就是保证产品的质量,测试人员则在其中担任着不可或缺的角色.测试人员的主要工作职责就是通过各种测试手段去发 ...
- 15 个 JavaScript Web UI 库
新闻来源:speckboy.com 几乎所有的富 Web 应用都基于一个或多个 Web UI 库或框架,这些 UI 库与框架极大地简化了开发进程,并带来一致,可靠,以及高度交互性的用户界面.本文介绍了 ...
- 15 个 JavaScript Web UI 库 (转)
几乎所有的富 Web 应用都基于一个或多个 Web UI 库或框架,这些 UI 库与框架极大地简化了开发进程,并带来一致,可靠,以及高度交互性的用户界面.本文介绍了 15 个非常强大的 JavaScr ...
- 适用响应式 Web UI 框架
1. Bootstrap Bootstrap是快速开发Web应用程序的前端工具包.它是一个CSS和HTML的集合,它使用了最新的浏览器技术,给你的Web开发提供了时尚的版式,表单,buttons,表格 ...
- DiQuick Web UI 框架 V1.3 正式版发布
DiQuick Web UI框架,采用HTML+CSS3+JS,配置有响应式布局及预定义设置,包含诸多组件:Nav.Tab.Media.Form.Menu.Slider.Dialog等,致力于开发轻量 ...
最新文章
- 解决flask中文乱码的问题
- Web测试要点 做移动端的测试,也做web端的测试,甚至后面桌面端的测试和后台的测试也做了,基本上把我们产品各个端都玩了一轮...
- Docker环境下Java应用的最大内存和堆内存的设置
- swal如何加入html语言,Sweet Alert弹窗点击确定后执行页面跳转等操作
- 计划任务工具 cron 的配置和说明
- 计算机二级链表,计算机二级c语言上机考试——结构体与链表(3页)-原创力文档...
- 小电科技开启裁员,涉及多个部门一律劝退?回应:消息不属实
- linux命令的-和--参数问题
- linux lite安装教程,Linux Lite第一个获得Linux 4.14 及如何安装它
- 问题:ajaxSuccess() ajaxComplete() ajaxError()....??? 参数event xhr options的用法
- 清华大学操作系统OS学习(十二)——信号量与管程
- 黑马程序员-python笔记-从入门到入职
- 计算机视觉前沿技术探索
- IPwe区块链智能池利用AI来处理专利分析
- 【python】if __name__==‘__mian__‘ 如何理解,原理及作用
- 【大话数据结构C语言】56 二叉排序树的查找、插入和删除
- 与或树的盲目搜索和启发式搜索
- C++行为型模式-实现观察者模式
- 《江山美人》:这只是一场游戏
- win10向VMware中的win7传文件
热门文章
- java如何恢复视图_Java - 如何用reformation+Moshi创建回收站视图_java_酷徒编程知识库...
- python时间转绝对秒数_python时间时分秒与秒数的互相转换
- java实现折半查找_java语言之实现折半查找算法
- 测试面试题集-3.生活物品测试:杯子、伞、钢笔、桌子
- Task04:集合运算-表的加减法和join等-天池龙珠计划SQL训练营
- NOIP模拟测试25
- NET EF 连接Oracle 的配置方法记录
- 使用python通过odbc处理*.dbf数据表
- Go语言基础练习题系列1
- python列表[]中括号