在做支付项目时,引用动态库,动态库弹出支付宝或者微信的支付码,继而接收。最终将结果返回给调用动态库方法。

首先,动态库接收的是一个string 类型的xml,如 public string Pay(string inputxml){...},继而弹出一个form,可以在动态库项目中新增一个windows窗体项目

在窗体项目中,添加需要返回的支付码,即text需要返回给dll处理的条形码,窗口如下:

代码如下:

public partial class ShowDialog : Form
{
public ShowDialog()
{
InitializeComponent();
} private string _barCode;//需要返回的条码
public string BarCode
{
get { return _barCode; }
set { this._barCode = value; }
} private void txt_barCode_KeyDown(object sender,KeyEventArgs e) //点击enter后,需要返回给dll,窗口关闭
{
if(e.KeyCode == Keys.Enter)
{
_barCode = this.txt_barCode.Text;
this.DialogResult = System.Windows.Forms.DialogResult.OK;
this.Close();
}
} private void btn_Cancel_Click(object sender, EventArgs e)//取消,窗口关闭,dll处理,支付取消
{
this.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.Close();
} private void ShowDialog_Load(object sender, EventArgs e)
{
this.txt_barCode.TabIndex = ;
this.txt_barCode.Focus();
}
}

切记要注意的是,txt_barCode_KeyDown是一个事件,在支付窗口设计时,必须要添加KeyDown事件,具体,右键,textbox属性,在如下中添加:

完毕后,输入支付条码后,就可接收值啦,如下:

//对话框,接收扫码字符串
ShowDialog sd = new ShowDialog();
if (sd.ShowDialog() == DialogResult.OK)
{
string barCode = sd.BarCode;//条码
// 继续传参给支付宝或微信支付
}

大致如此。。

引用dll动态库,动态库中弹出对话框输入,将输入参数,作为变量继续调用。的更多相关文章

  1. 在动态链接库dll中弹出对话框

    在动态链接库dll中弹出对话框步骤: 1.添加Dialog资源,然后在资源视图的对话框界面右击添加类,输入类名MyDlg,使得其继承与CDialogEx.(继承CDialog应该也可以)2.在新生成的 ...

  2. Swing中弹出对话框的几种方式_JOptionPane.showMessageDialog等详解

    Swing中弹出对话框的几种方式_JOptionPane.showMessageDialog等详解   在swing中,基于业务的考量,会有对话框来限制用户的行为及对用户的动作进行提示. Swing中 ...

  3. Android中弹出对话框,AlertDialog关键代码

    写在这里便于以后查看. Android中弹出对话框的关键代码: btn01.setOnClickListener(new OnClickListener() { @Override public vo ...

  4. PyQt中弹出对话框操作

    经常有初学者搞不清楚如何在PyQt中弹出对话框,以及如何处理返回值.这篇文章会举例说明,界面采用手工编写. 我们一般说的对话框指的是模态对话框(Modal Dialogue Box),一旦弹出,就不能 ...

  5. 在MFC主对话框OnInitDialog()中弹出对话框

    BOOL CXXXDlg::OnInitDialog(){ CDialogEx::OnInitDialog(); SetIcon(m_hIcon, TRUE); SetIcon(m_hIcon, FA ...

  6. Android 在Service中弹出对话框

    1.在Androidmanifest.xml中插入 <uses-permission android:name="android.permission.SYSTEM_ALERT_WIN ...

  7. Swing中弹出对话框的几种方式(转)

    http://www.cnblogs.com/mailingfeng/archive/2011/12/28/2304289.html 在swing中,基于业务的考量,会有对话框来限制用户的行为及对用户 ...

  8. Android 在广播接收器中弹出对话框

    特别需要注意的几点如下: 需要设置AlertDialog的类型 WindowManager.LayoutParams.TYPE_SYSTEM_ALERT 2. 需要声明Window弹框的权限 < ...

  9. C# Web开发中弹出对话框的函数[转载]

    public void Alert(string str_Message) { ClientScriptManager scriptManager =((Page)System.Web.HttpCon ...

随机推荐

  1. chrome地址栏搜索直接跳转百度首页?

    https://www.baidu.com/s?ie={inputEncoding}&wd=%s

  2. [转]hql 语法与详细解释

    HQL查询:Criteria查询对查询条件进行了面向对象封装,符合编程人员的思维方式,不过HQL(Hibernate Query Lanaguage)查询提供了更加丰富的和灵活的查询特性,因此 Hib ...

  3. C++虚函数浅探

    C++中和虚函数(Virtual Function)密切相关的概念是"动态绑定"(Dynamic Binding),与之相对的概念是"静态绑定"(Static ...

  4. ping命令执行过程详解

    [TOC] ping命令执行过程详解 机器A ping 机器B 同一网段 ping通知系统建立一个固定格式的ICMP请求数据包 ICMP协议打包这个数据包和机器B的IP地址转交给IP协议层(一组后台运 ...

  5. 微信支付JSAPI模式及退款CodeIgniter集成篇

    微信支付接口文档:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_1 首先你得知道这个jsapi是不能离开微信进行调用支付的,明白 ...

  6. HTML5和CSS3新特性一览

    HTML5 1.HTML5 新元素 HTML5提供了新的元素来创建更好的页面结构: 标签 描述 <article> 定义页面独立的内容区域. <aside> 定义页面的侧边栏内 ...

  7. Html中鼠标悬停显示二级菜单的两种方法

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. springMVC含文件上传调用ajax无法连接后台

    springMVC在使用ajax进行后台传值的时候发现找不到对应的requestMapping(""),无法进入后台,在多次试验后确定是 MultipartFile对象与ajax冲 ...

  9. CodeForces 103D 分块处理

    题目链接:http://codeforces.com/problemset/problem/103/D 题意:给定一个长度为n的序列.然后q个询问.每个询问为(a,b),表示从序列第a项开始每b项的加 ...

  10. Webkit 文字和背景效果

    -webkit-background-clip:padding-box | border-box | content-box | text,指定对象的背景图像向外裁剪的区域.对应的脚本特性为backg ...