在ASP中使用智岛网格控件全过程

过程|控件

在ASP中使用智岛网格控件全过程
--------------------------------------------------------------------------------

智岛网格控件作为数据的表示层,可以非常方便的进行货币样式、人民币大小写、中文大小写、各种逻辑样式、百分比样式、千分位分割等样式设置;可以冻结、锁定行列、对输入数据进行验证;可对字段设置公式,方便快捷地统计、汇总数据。智岛网格控件以其丰富多样的表现形式、简单易用的操作赢得了广大软件开发人员的一致好评。下面和大家分享一下智岛网格控件在ASP中的应用心得:

图1 样式设置

图2 图片管理

图3 多层标题

图4 汇总模式

图5 冻结锁定

图6 合并模式

一、注册智岛网格控件

下载智岛网格控件(其文件名为OGrid.ocx)后,按照如下方法注册控件:

点击“开始”→“运行”;在运行对话框中输入以下命令:
regsvr32 < OGrid.ocx文件的绝对路径>  注册智岛网格控件控件
regsvr32 /u < OGrid.ocx文件的绝对路径> 解除智岛网格控件的注册

二、在页面中添加智岛网格控件

在页面中加入以下代码,即可插入智岛网格控件:

<object classid="clsid:79B00E6B-6110-46AE-891C-97773022C958" width="0" height="0" id="OGrid" CODEBASE="http://www.oapro.com/ostarocx/download/OGrid.ocx"></object>

其中:
width和height:指控件的显示宽度和高度;
id:指控件对象的名称,通过该名称实现对控件的操作;
CODEBASE:指没有安装智岛网格控件的客户端运行该页面时自动下载安装该控件的刂贰?lt;/P>

三、用智岛网格控件表现XML格式数据

1. XML文档格式

智岛网格控件采用XML文档作为数据存储交换格式,下面是一份XML文档格式:

<?xml version="1.0" encoding="GB2312"?>
<Table>
<TableInfo><!--表信息-->
<TableName>人事表</TableName><!--数据表名称-->
<FieldInfoArray>
<FieldInfo><!--记录字段信息的XML-->
<FieldName>姓名</FieldName><!--字段名称-->
<DataType>10</DataType><!--字段数据类型3:逻辑型7:数值型10:字符型12:备注型23:日期型-->
<CellType>0</CellType><!--表元类型0:文本框,1:组合框,2:检验框,3:日期时间,7:人民币小写栏金额控件-->
</FieldInfo>
...
</FieldInfoArray>
</TableInfo>

<Rows><!--多行数据-->
<Row><!--单行数据-->
<name>张三</name>
<sex>男</sex>
...
</Row>
...
</Rows>
</Table>

2. 代码实现

通过以下语句通知智岛网格控件打开XML文档:

OGrid.OpenTableXML("")

其中引号内XML文档的绝对路径,例如:
http://www.oapro.com/ostarocx/sample/OGrid/xml/样式设置.xml
或者
C:\样式设置.xml

四、用智岛网格控件表现来自于数据库的数据

1. XML文档格式

智岛网格控件采用XML文档作为交换格式,但更多的数据源是数据库,如何表现来自于数据库的数据呢?我们可以将数据库的数据动态转为XML格式。以下代码实现了将一ACCESS数据库中指定数据表的内容转为XML文档格式。您可将代码中db.mdb文件换成您自己的数据库名称。指定的数据表名称来自于传递到该文件的参数值:Table_name。

<%
dim sql,rs
dim Table_name
<!--取得数据表名称-->
Table_name=request.QueryString("Table_name")
Set rs= Server.CreateObject("ADODB.Recordset")
Const adSchemaTables = 20
adSchemaColumns = 4
strConn="DBQ="+server.mappath("db.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.open strConn
Set rstSchema = oConn.OpenSchema(adSchemaColumns)
Set rsttable = oConn.OpenSchema(adSchemaTables)
i=0
%><?xml version="1.0" encoding="gb2312"?>
<Table>
<TableInfo>
<TableName><%=Table_name%></TableName>
<FieldInfoArray>
<%
//生成XML文件头
Do Until rstSchema.EOF
if rstSchema("Table_name") = Table_name then
if rstschema("column_Name")<>"ORowInfo" or rstschema("column_Name")<>"osysMachineID" then
%> <FieldInfo>
<FieldName><%=rstschema("column_Name")%></FieldName> <ColName><%=rstschema("column_Name")%></ColName>
<%select case rstschema("data_type")
case "130"
if rstschema("CHARACTER_MAXIMUM_LENGTH") = 1073741823 then%> <DataType>12</DataType>
<CellType>0</CellType>
<%else%> <DataType>10</DataType>
<CellType>0</CellType>
<%end if
case 135%> <DataType>23</DataType>
<CellType>3</CellType>
<%case 3%> <DataType>7</DataType>
<CellType>0</CellType>
<%case 11%> <DataType>3</DataType>
<CellType>2</CellType>
<%case 131%> <DataType>10</DataType>
<CellType>0</CellType>
<%case 5%> <DataType&

时间: 2024-10-24 01:52:10

在ASP中使用智岛网格控件全过程的相关文章

在ASP.NET 2.0中操作数据:在GridView控件中使用TemplateField

asp.net|控件|数据 导言     让我们花点时间在浏览器中来看看我们的成果.这时,你将看到一个表格, 表格中每一个记录都是一个雇员的信息,一共有四列:一个是雇员的姓, 一个是名字,一个是头衔,还有一个是他们的受雇日期.     就像你看到的那样,TemplateField由两个模板组成--一个ItemTemplate,它有一个Label控件,其Text属性被设置为FirstName数据字段的值:还有一个EditItemTemplate,它有一个TextBix控件,其Text属性也被设置为

view类中怎么访问属性栏上的属性网格控件?

问题描述 view类中怎么访问属性栏上的属性网格控件? 小弟在做一个MFC绘图的程序,需要在绘图区中点击相应的图形,如直线,在右侧的属性栏上显示对应图形的参数,使用成员变量的形式访问会出现内存冲突的问题,求高手解答,O(∩_∩)O谢谢! 解决方案 可以通过主框架窗口来中转,在View中很容易访问主框架窗口(比如通过AfxGetMainWnd() SDI程序),在CMainFrame类中肯定定义了相关的属性类的对象成员.

实时显示-vc 怎么让网格控件 实时的显示数据库中的数据好点,ODBC连的数据库

问题描述 vc 怎么让网格控件 实时的显示数据库中的数据好点,ODBC连的数据库 使用一个网格控件显示数据库中的一些字段的值,当库中的数据有变化时,网格及时刷新, 除了定时查询数据库显示到网格之外,还有没有别的方法,各位大牛们都是怎么做的? 解决方案 http://www.51cto.com/specbook/14/37094.htmhttps://msdn.microsoft.com/zh-cn/library/a52dhwx7(v=VS.80).aspx 解决方案二: 开一个后台线程定期查询

asp.net中的文件上传控件能否打开一个固定文件夹然后再选择文件

问题描述 asp.net中的文件上传控件能否打开一个固定文件夹然后再选择文件asp.net中的文件上传控件能否打开一个固定文件夹然后再选择文件我现在要上传文件,但是在点击浏览的时候我想要打开一个指定的目录,然后在这个目录中选择文件..用什么方法能够实现呢?请各位大侠帮忙呀!!!!!!!!!??????????????????????????谢谢各位!!!!!!!! 解决方案 解决方案二:属于客户端程序,安全考虑的话怕不可行解决方案三:可以,将所选目录文件列出就行了,用常用的IO操作就能实现CSD

ASP.NET MVC中加载WebForms用户控件(.ascx)

原文:ASP.NET MVC中加载WebForms用户控件(.ascx) 问题背景 博客园博客中的日历用的是ASP.NET WebForms的日历控件(System.Web.UI.WebControls.Calendar),它会为"上一月"."下一月"的链接生成"__doPostBack()"的js调用,如下图: 目前发现它会带来两个问题: 1. 不支持IE10: 2. 某些电脑不允许执行__doPostBack. 问题提炼 前提: 我们想以最低

asp.net-C#中 鼠标移动到某控件上的事件

问题描述 C#中 鼠标移动到某控件上的事件 想要实现 当我的鼠标移动到控件上的时候 可以显示一个小小的提示框 提示某信息 举个栗子的话 就是 在qq主面板上的时候 如果我把鼠标停留在 五角星上一会 然后就会显示"QQ空间" 这样 搜了很多鼠标事件·· 但是还是不知道这个小提示应该怎么写出来 辛苦了 (:з」∠)

真正类似于 Excel 的网格控件

excel|控件 注 与本文相关的下载文件的 Visual Basic_ 版本已于 3 月 4 日进行了更新.如果您是在 3 月 4 日之前下载源代码的,则将需要重新下载该文件以获得 Visual Basic 文件. ASP.NET DataGrid 控件生成一个 HTML 输出结果,此结果看上去确实像 Microsoft Excel 工作表的 Web 副本.另外,该控件支持如选择和就地编辑之类的功能,这些功能又进一步证实了这种相似性.特别是,从支持就地编辑功能这一点来看时,这种相似性就最为明显

探讨ASP.NET 2.0的Web控件改进之概述

asp.net|web|控件 一. 引言 到目前为止,你可能已经了解了大量的ASP.NET 2.0新特征-母版页面,主题,提供者,等等--所有这样内容都相当精彩:但是,你是否了解到有关定制Web控件开发方面的重大变化?这正是我在本文中所想讨论的.如果你已经从事于控件开发,那么,我想本文所描述的ASP.NET 2.0中的新的改进特征会立即应用于你的控件开发中. 首先应该注意的是,你以前使用ASP.NET 1.1(或1.0)开发的所有Web控件在2.0版本下将继续良好运行-微软并没有破坏你的现有代码

ASP.NET移动开发之SelectionList控件

asp.net|select|控件 正如前面提及的那样,SelectionList控件适用于呈现较短列表的数据项.尽管它不具备对长列表的分页显示功能,但是它的呈现形式是丰富多样的.只要设备浏览器支持,SelectionList控件可以以下拉列表.单项按钮.多选按钮和复选框等众多形式存在. SelectionList控件的列表中只有一个可视的数据项,其它的数据项只能以隐藏值的形式与可视的数据项进行关联.要在服务器控件语法中指定隐藏值,可以在<Item>元素中使用Value属性,并且将Value属