列表插件重写void ListRowDoubleClick(ListRowDoubleClickArgs e)事件,在事件中处理具体逻辑,具体代码如下

public override void ListRowDoubleClick(Core.List.PlugIn.Args.ListRowDoubleClickArgs e)
{
base.ListRowDoubleClick(e);
BillShowParameter param = new BillShowParameter();
param.FormId = "PUR_PurchaseOrder"; //业务对象唯一标识,采购订单为例;
param.OpenStyle.ShowType = ShowType.MainNewTabPage; //新页签方式打开;
param.Status = OperationStatus.EDIT; //打开单据状态为修改
param.ParentPageId = this.View.PageId;
param.PKey = this.ListView.CurrentSelectedRowInfo.PrimaryKeyValue; //主键值,就是单据内码啦
param.LayoutId = this.ListView.CurrentSelectedRowInfo.LayoutID;
this.View.ShowForm(param);
}

还有一种是打开一个URL。

public override void ListRowDoubleClick(Kingdee.BOS.Core.List.PlugIn.Args.ListRowDoubleClickArgs e)
{
base.ListRowDoubleClick(e);
e.Cancel = true;
//JSONArray paras = new JSONArray();
//JSONObject jo = new JSONObject();
//jo["url"] = "http://www.baidu.com"; /// 如果是本网站相对路径,就不要加http://
//jo["title"] = "百度-Open";
//paras.Add(jo);
//this.View.AddAction("OpenUrlWindow", paras);
}

也可以使用ShowForm来实现这种场景,看下面的例子:

BillShowParameter param = new BillShowParameter
{
FormId = ConstTag.HR_JS_GradeSeq,
PageId = Guid.NewGuid().ToString()
};
param.CustomParams.Add("JSSchemeId", ret[0]["FJSSchemeId"].ToString());
param.CustomParams.Add("FGradeId", selectedRow.PrimaryKeyValue);
param.OpenStyle.ShowType = ShowType.Default;
this.View.ShowForm(param);

必要的解释:

1FormId是你需要显示的表单的唯一标识。pageid赋一个guid就可以了。

2.param.customParams是一个字符串参数的集合,这里传入一些参数后可以在SHow出的表单中根据key来获取对应的参数。

3.ShowType是显示类型,ShowType.Default默认显示为弹窗模式。当然你可以显示其他的模式,自己写一下就知道了。

新显示的窗体可以用OpenParameter接受你传递的参数,下面是例子:

public override void OnLoad(EventArgs e)
{
Int64 schemeid = this.View.OpenParameter.GetCustomParameter("JSSchemeId").ConvertTo<Int64>(0);
Pkid = this.View.OpenParameter.GetCustomParameter("FGradeId").ConvertTo<Int64>(0);
}

最新文章

  1. Linux下搭建Windows KMS服务器
  2. LeetCode Reverse Vowels of a String
  3. Visual Studio 插件AnkhSvn 更改Svn URL和登录信息
  4. [C#对sql操作]C#对sql server 2008数据库操作
  5. KSFramework常见问题:Lua脚本热重载,内存状态数据丢失?
  6. SQL错误级别 状态 怎么定义
  7. 关于url
  8. VG vs SS WE vs IM [20160815]
  9. Debian 8 最小化系统安装muduo
  10. MySQL5中大数据错误:Packet for query is too large (****** &gt; ******). You can change this value on the server by setting the max_allowed_packet&#39; variable.;
  11. Codeforces Round #158 (Div. 2) C. Balls and Boxes 模拟
  12. What&#39;s New for Visual C# 6.0
  13. BZOJ 2002: [Hnoi2010]Bounce 弹飞绵羊 LCT
  14. HDU 5903 - Square Distance [ DP ] ( BestCoder Round #87 1002 )
  15. 重大新闻:借贷宝不用绑卡了,借贷宝APP推出肖像识别新功能!
  16. webform在页面生成的代码与事件回传
  17. 使用Atlas进行元数据管理之Glossary(术语)
  18. 1.2.7 Excel表格打印技巧
  19. MySQL表结构变更,不可不知的Metadata Lock
  20. C++常用代码优化策略

热门文章

  1. spring cloud config搭建说明例子(三)-添加actuator
  2. mycat登录报错Host &#39;XXX&#39; is blocked because of many connection errors的另一种解决思路
  3. Javascript对象基础讲解
  4. C# 生成 bmp 格式的图片
  5. HTML基础---表单
  6. Linux学习日记之crontab使用notify-send实现每小时通知提醒
  7. 一个完整的网站记录(springmvc hibernate juery bootstrap)
  8. 常用css属性总结
  9. Android Studio 入门 Hello World
  10. 三维重建:GitHub百度Apollo 2.0