Datawindow.net 系列七

Datawindow.net 系列一 最近接触到Datawindows.net,简单介绍一下什么是Datawindow.net? 参考:http://www.it.com.cn/f/edu/0410/12/33896.htmSybase近日宣布推出适用于任何.NET环境的功能强大的新型开发工具DataWindow.NET,该项技术简化并加快了包括富客户和智能客户在内的数据驱动企业级应用。Sybase DataWindow.NE 阅读详情
先贴出来问题图形
Pic-001
pic-002
在tabpage中,通过单击pic-001的某一行,转到另外的tabpage,显示detail information,思索,待续。。。
经过研究,准备使用ICallbackEventHandler的客户端回调事件。

ICallbackEventHandler可以说是ajax的关键技术,现在可以使用vs2.0的接口,来实现ajax的效果。
refer to:http://www.cnblogs.com/soso/archive/2006/06/08/420687.html
六步使用ICallbackEventHandler实现无刷新回调
    AJAX技术所提倡的无刷新回调,在原来的技术中需要写大量的JavaScript代码或使用一些AJAX框架,使得开
发效率和可维护性大大降低。其实ASP.NET2.0中,已经提供了这样的接口,这就是ICallbackEventHandler。
    关于ICallbackEventHandler网上已经有很多文章介绍了,这篇实为画蛇添足。
ICallbackEventHandler存在于System.Web.UI中,我们先做一个非常简单的例子来试用一下。
   第一步,在VS2005中建立一个新的WEB窗件。
   第二步,在ASPX中,放上一段HTML代码(如下):

1<body>
2    <form id="form1" runat="server">
3    <div>
4        <button onclick="CallServer()">CallServer</button>
5    </div>
6    </form>
7</body>
   第三步,然后在<HEAD></HEAD>中放入一段JavaScript脚本:

 1 <script type="text/javascript">
 2     function CallServer()
 3     {
 4         var product = "测试";
 5         <%= ClientScript.GetCallbackEventReference(this, "product", "ReceiveServerData",null)%>;
 6     }
 7    
 8     function ReceiveServerData(rValue)
 9     {
10         alert(rValue);
11     }
12 </script>
 
   第四步,在此ASPX的后台CS代码中,继承ICallbackEventHandler接口,并实现接口中的两个方法:
 ICallbackEventHandler.GetCallbackResult()
    和
 ICallbackEventHandler.RaiseCallbackEvent(string eventArgument)
   第五步,增加一个变量CallBackValue,并修改接口的两个方法为:

 1 private string CallBackValue = string.Empty;
 2   
 3 string ICallbackEventHandler.GetCallbackResult()
 4 {
 5  return CallBackValue + ",ok";
 6 }
 7
 8 void ICallbackEventHandler.RaiseCallbackEvent(string eventArgument)
 9 {
10  this.CallBackValue = eventArgument;
11 }
12
 
    第六步,运行,界面上会出现一个按钮,点击后,会将“测试”这个字符串传至后台,后台C#代码将字符串
加上“,OK”后返回给客户端的JavaScript代码,并显示。
    以上六步,就可以实现无刷新回调了。现在,我们来分析一下几段代码。
    先看第三步中的JavaScript代码,其中的CallServer()方法中进行了回调,回调的语句为:
<%= ClientScript.GetCallbackEventReference(this, "product", "ReceiveServerData",null)%>;
   
    里面四个参数中第二个参数指定将product这个JavaScript中的字符串变量传回后台,第三个参数指定了从后
台返回时接收返回信息的JavaScript方法ReceiveServerData(string Value)。
    第五步中后台的两个方法,一个ICallbackEventHandler.RaiseCallbackEvent(string eventArgument)用来
接收前台JavaScript中传来的字符串变量,并赋值给内部变量this.CallBackValue,另一个方法
ICallbackEventHandler.GetCallbackResult()将变更后的内部变量this.CallBackValue返回给前台JavaScript方
法ReceiveServerData(string Value)。
    调用的顺序是: (前台)CallServer() --> (后台)ICallbackEventHandler.RaiseCallbackEvent(string
eventArgument) --> (后台)ICallbackEventHandler.GetCallbackResult() --> (前台)ReceiveServerData
(string Value)。
    整个调用过程非常简单,而其中非常关键的一步是第三步的
<%= ClientScript.GetCallbackEventReference(this, "product", "ReceiveServerData",null)%>;
完整的测试代码:
aspx:
==============
<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<html xmlns=" http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ICallbackEventHandler demo</title>
    <script type="text/javascript">
        function CallServer()
        {
            var product="hello";
            <%=ClientScript.GetCallbackEventReference(this,"product","ReceiveServerData",null) %>;
        }
        function ReceiveServerData(rValue)
        {
            alert(rValue);
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <input id="Button1" type="button" value="CallServer" onclick="CallServer()" />
    </div>
    </form>
</body>
</html>
cs:
============
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page , ICallbackEventHandler
{
    private string CallBackValue = string.Empty;
    protected void Page_Load(object sender, EventArgs e)
    {
    }
   #region ICallbackEventHandler 成员
    string ICallbackEventHandler.GetCallbackResult()
    {
        //throw new Exception("The method or operation is not implemented.");
        return CallBackValue + ", i am server";
    }
    void ICallbackEventHandler.RaiseCallbackEvent(string eventArgument)
    {
        //throw new Exception("The method or operation is not implemented.");
        this.CallBackValue = eventArgument;
    }
Datawindow.net 系列二 Datawindow.Net version 2.0使用概要 1. 安装 先安装.net2005 ,框架版本2.0,然后安装DataWindow.Net 2.0组件及设计编译环境。 安装后在.net2005窗体设计时会出现Sybase DataWindow控件页签。 2. 使用 DataWindow控件可以直接在C#窗体中使用。3. 设计DataWindow 在PB或DataWindow 阅读详情

相关推荐

Datawindow.net 系列三

 经过上面系列一,二的讲解,相信朋友们,对Datawindow.net有了初步的认识,本系列三,从datawindow.net的配套的一个datawindow Designer入手,讲解。我们使用datawindow.net的初终,就是基于其强大的datawindow处理,所以datawindow designer的使用,是必须的!前面使用的pbl文件,就是有其设计的。如果你使用过pb,特别是

IT 5933

C#中使Datawindow.Net组件处理数据

1. 安装先安装.net2003 ,框架版本1.1,然后安装DataWindow.Net组件及设计编译环境。安装后在.net2003窗体设计时会出现Sybase DataWindow控件页签。2. 使用DataWindow控件可以直接在C#窗体中使用。3. 设计DataWindow在PB或DataWindow设计环境中设计数据窗,并存到.pbl中,供程序调用。发布后可以编译成.pbd文件格式。4.

.NET爱好者--小桥流水人家 1788

Datawindow.net 系列四

本题旨在解决Datawindow.net 系列一 中提到的,vs2.0 web 应用程序,不支持datawindow.net 2.0的问题,解决方法如下:解决方案资源管理器/引用,右击,添加引用/浏览, 选择如下四个文件:Sybase.PowerBuilder.Db.dllWebDataWindow.dllDataWindow.dllDataWindowInterop.dll

IT 4828

DataWindow.net应用介绍(一)

Datawindow中文译名为数据窗口,是开发工具PowerBuilder(PB)的一个王牌组件,使用PB作为开发工具的,基本上都是冲着Datawindow 来的,它不仅可以用来显示数据,还可以实现数据录入、报表打印等功能,是Sybase 的专利技术,功能非常强大。Sybase从PB10.0开始,为了使PB开发的应用可以支持.Net,就开发出来了DataWindow.net组件,可以...

weixin_30888413的博客 423

在.NET中调用DataWindow操作数据库

                          在.NET中调用DataWindow操作数据库       Sybase在2004/1/19日推出了Pb 10 beta1版本,其中包含DataWindow.NET 1.0,这真是一个另人兴奋的消息! 在PB市场日益萎缩的今天,在.NET大行其道的今天Sybase公司终于推出了DataWindow.NET,它支持DataWindow绝大部份原

Dibov的专栏 1850

PB12.6_DataWindow

这个东东是什么?不需要说明了吧,如果不明白是什么东西的就不要浪费积分了,VS2012\VS2013亲测可用: 使用之前需要复制到\PowerBuilder 12.6\DotNET\bin 和C:\Windows\Microsoft.NET\assembly\GAC_32\Sybase.PowerBuilder.DataWindow.Win\v4.0_12.6.0.0__598c7456a83d557a 增加方法: 1、新建一个VS项目: 文件——〉新建——〉项目——〉Windows窗体应用程序——〉保存 2、打开窗体——〉点击工具箱——〉右键选择——〉添加选项卡(命名为:DataWindow)——〉.NET Freamework组件——〉浏览——〉找到C:\Windows\Microsoft.NET\assembly\GAC_32\Sybase.PowerBuilder.DataWindow.Win\v4.0_12.6.0.0__598c7456a83d557a目录下的Sybase.PowerBuilder.DataWindow.Win.dll确定就OK了 使用方法: 1、首先在PowerBuilder 12.6中建好数据窗口并保存,把对就的数据窗口PBL文件拷贝到VS项目目录下 2、回到VS2012/VS2013 把DataWindowControl拖拽到窗体 3、设置:DataWindowControl属性 A、LibraryList为*.PBL文件 B、DataWindowObject选择*.PBL中数据窗口所使用的名字 4、完成以上步骤后,我们可以把DataWindowControl看作一个DataGridView来使用(可以retrieve 数据表),具体使用就不详细说明了。

戏说DataWindow的“移植”和“临摹”

datawindow是一个好东西,兼具sql交互,数据展示,报表,录入,编辑,删除,排序,dw和ds之间数据拷贝,ds的容器作用。诸多好处,堪称经典。关于Powerbuilder的历史,请搜索“Powerbuilder的历史”我只说一个问题:“DataWindow——这个用90%的C代码以及10%的汇编写成的对象”这个对象的速度和用处大,是datawindow受到特别对待的根本。但是从现在的角度看问题。我认为它脱离不了本地执行的cs运用模式。powerj中有datawindow for java,不过我也没

chengg0769 平淡无奇见真知 独立博客: http://blog.mis2erp.com 4413

DataWindow.Net 2.5 9097

这个东东干什么用的就不说了,该知道的就知道了,不知道的就别知道了, 将9097文件夹下的文件覆盖到安装路径 \Sybase\DataWindow .NET 2.5 以及\Sybase\DataWindow Designer 2.5即可.

C# 中使用pb的dataWindow

首先下载dataWindow.net 后安装

ˉ-_lishk_-ˉ 2523

DataWindow.net打印的实现

DataWindow.net打印功能的实现方法

datawindow.rar

datawindow数据窗体

datawindow.net 学习

Datawindow.Net version 2.0使用概要 1. 安装 先安装.net2005 ,框架版本2.0,然后安装DataWindow.Net 2.0组件及设计编译环境。 安装后在.net2005窗体设计时会出现Sybase DataWindow控件页签。 2. 使用 DataWindow控件可以直接在C#窗体中使用。 3. 设计DataWindow 在PB或DataWindow ...

cab0605 706

FortiOS路径遍历漏洞CVE-2022-41328实战复现:从环境搭建到漏洞利用全记录

本文深入解析FortiOS路径遍历漏洞CVE-2022-41328,从漏洞背景、影响范围到技术原理进行全面剖析。提供详细的漏洞复现环境搭建步骤和实战利用方法,并给出官方修复方案与临时缓解措施,帮助企业有效防御此类防火墙漏洞风险。

weixin_30485379的博客 523

Datawindow.net 系列八

 先给大家一个参考学习的连接http://objectsharp.com/cs/blogs/dave/category/86.aspxhttp://www.sybase.com/products/development/datawindownetdownload evaluation:I.DataWindow .NET v2.5 Evaluation Edition(DataWindo

IT 4334

GEO芯片数据下载和探针ID转换(保姆级教程)

R语言安装、GEO芯片数据下载、探针ID转换

qq_43138237的博客 3万+

FPGA数字下变频实战:用Vivado DDS IP核实现IQ采样与频率校正(附MATLAB仿真对比)

本文提供了一份基于Vivado DDS IP核实现FPGA数字下变频(DDC)的完整工程指南。详细阐述了IQ采样的原理、DDC链路构建、DDS频率校正的工程实现,并重点介绍了如何利用MATLAB搭建黄金参考模型进行全链路仿真与对比验证,分享了关键的调试技巧与性能优化建议。

t1u2v的博客 811

Datawindow.net 系列六

这几天,一直在测试datawindow.net 2.0+vs2..5共用的问题,觉得总体还不错,虽然已经发布到v2.0,v2.5也已经到评估阶段,另我不满意的就是,参考资料,确实太少,很多问题,都要自己测试,总结,也坚定了我把这个系列写下去的决心,方便后来的新手,能入门更快一些。以上5个系列的简述,也是我测试的过程,属于边测试边总结吧。本系列的测试环境为:vs2.0+sql server

IT 4241

C#调用Halcon程序三种方法

C#调用Halcon程序三种方法 1.halcon导出C#文件,在C#里面调用 2.在C#里面使用Halcon引擎调用Halcon程序 3.在C#里面使用Halcon引擎调用.hdev下本地函数或者.hdvp外部函数 Halcon引擎手册:C:/Program Files/MVTec/HALCON-21.11-Progress/doc_en_US/html/manuals/programmers_guide/programmers_guide_0120.html 1.导出C#(代码我只给出类,需要调用)

A541925504的博客 1万+

Datawindow.net 系列九

本文中使用了Datawindow.net2.5:datawindow.net在vs2.5中,保存数据,很像pb,使用UpdateData就可以了,对于使用过pb的人来说,还是非常方便的。UpdateData(true,true);同时export各种format的文件,也是非常方便的dw.SaveAs(@"c:/" + DateTime.Now.ToString("yyyy

IT 4584

如何在R语言中使用Logistic回归模型

在日常学习或工作中经常会使用线性回归模型对某一事物进行预测,例如预测房价、身高、GDP、学生成绩等,发现这些被预测的变量都属于连续型变量。然而有些情况下,被预测变量可能是二元变量,即成功或失败、流失或不流失、涨或跌等,对于这类问题,线性回归将束手无策。这个时候就需要另一种回归方法进行预测,即Logistic回归。 在实际应用中,Logistic模型主要有三大用途: 1)寻找危险因素,找到某些影响...

weixin_34056162的博客 9552

RAG系统中Embedding模型选型实战

本文详细介绍了RAG系统中Embedding模型选型实战,希望能对学习RAG的同学们有所帮助。 文章目录 1. 前言 2. 思路解析 3. 测评数据集构建 3.1 步骤一 3.2 步骤二 3.3 数据示例 3.4 总结 4. 实战代码 4.1 本地模型 4.2 使用第三方的Embedding模型API

herosunly的博客 17万+

Datawindow.net 系列五

系列 五--讲述page的分页可以看看实现的效果图CheckBox:Show Page Info------show or hide Page total informationDropDownList:Place-----show page navigation top , bottom or topbottomChekBox:Image Navigation---deter

IT 5141

YOLOv11改进 | Conv改进篇 | 含2种改进,引入DynamicConv替换普通Conv卷积下采样和C3k2_DynamicConv替换C3k2(来自CVPR2024)

本文提出了一种基于DynamicConv动态卷积优化的YOLOv11轻量化模型改进方案。通过引入多专家机制的动态卷积模块,在增加模型参数量的同时保持较低的计算复杂度(FLOPs),有效解决了低FLOPs模型在大规模预训练中的性能瓶颈问题。文章详细介绍了动态卷积的工作原理、核心代码实现,并提供了在YOLOv11中集成DynamicConv和C3k2_GhostModule_DynamicConv模块的完整教程,包括模块添加、配置文件修改和模型训练验证过程。实验结果表明,该方案在保持高效推理速度的同时显著提升了

Ai缝合怪、助力小伙伴高效发论文 537

DataWindow .NET 2.5 工作在 VS 2008的问题

1、在VS2008中无法使用DataWindow .NET 2.5在VS2005的插件面板DataWindow .NET 2.5 安装过程三个dll注册失败(DWPrj.dll、DWPainter.dll、 QryPainter.dll)安装完成后在VS2008中无法打开相应面板。2、在VS2008中单独使用DataWindow Designer  2.5无法得到sybase支持D

不愿放弃的专栏 3264

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

上一篇: Datawindow.net 系列六
下一篇: Datawindow.net 系列八
FollowIT
博客等级 码龄21年 31粉丝 71原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值