移动BOS - ShowForm打开详解
一、概述:
本篇将介绍ShowForm在移动端的用法:
1. ShowForm常用的传入参数对象。
2. ShowForm打开一个移动表单,并回调。
3. ShowForm打开一个移动列表。
4. ShowForm打开一个指定单据的单据详情。
5. ShowForm打开一个半屏带标题模态的单据
6. ShowForm打开一个半屏带标题不带关闭按钮的单据
7. ShowForm的表单从底部、左边、右边滑出
8. ShowForm的表单在指定位置停靠
9. ShowForm的表单在指定控件下面停靠
10. ShowForm移动单据列表时指定过滤条件、携带自定义参数
二、适用版本:
适用于V 7.6(PT-146867)及以上,移动运行时新框架xmobile版
三、详细介绍:
3.1. ShowForm常用的传入参数对象包括:
MobileShowParameter:用于打开移动表单 MobileListShowParameter :用于打开移动单据列表 MobileBillShowParameter:用于打开移动单据的单据详情 param.OpenStyle.ShowType的打开模式: A.默认打开(缺省):ShowType.Default B.直接打开:ShowType.Modal. MobSelfOpenPage C.弹窗打开: ShowType.Modal //不带标题栏的弹窗 ShowType.Floating; //带标题栏的弹窗 D.中转打开:ShowType.Modal. MobTransferPage
3.2. ShowForm打开一个移动表单,并回调。
private void ShowForm1() { MobileShowParameter param = new MobileShowParameter(); param.FormId = "PAEZ_yccl";// PAEZ_yccl为表单标识 param.ParentPageId = this.View.PageId; this.View.ShowForm(param, delegate(FormResult r) { //回调在此处理 //r.ReturnData 为回传数据 }); } //回调前的赋值 this.View.ReturnToParentWindow(回传的数据)
3.3. ShowForm打开一个移动列表。
private void ShowForm2() { MobileListShowParameter param = new MobileListShowParameter(); param.FormId = "kd_CCSQYS"; param.ParentPageId = this.View.PageId; this.View.ShowForm(param); }
3.4. ShowForm打开一个指定单据的单据详情。
private void ShowForm3() { MobileBillShowParameter param = new MobileBillShowParameter(); param.FormId = "kd_CCSQYS"; param.ParentPageId = this.View.PageId; //指定被打开的单据id param.PKey = "100027"; //新增不用设置 param.Status = OperationStatus.EDIT;//新增为 OperationStatus.ADDNEW this.View.ShowForm(param); }
3.5. ShowForm打开一个半屏带标题模态的单据
private void ShowForm4() { MobileBillShowParameter param = new MobileBillShowParameter(); param.FormId = "kd_CCSQYS"; param.ParentPageId = this.View.PageId; param.PKey = "100027"; param.Status = OperationStatus.EDIT; //半屏,以宽高320*480为基数 param.Height = 240; //实际值= Height*屏幕高/480 param.Width = 300; //实际值= Width*屏幕宽/320 //弹出窗口,ShowType.Modal 为不带标题栏的弹窗 param.OpenStyle.ShowType = ShowType.Floating; //带标题栏 JSONObject obj = new JSONObject(); //模态,禁用遮罩点击关闭 obj.Put("shadeClose", false); param.LayerOptions = obj; this.View.ShowForm(param); }
3.6. ShowForm打开一个半屏带标题不带关闭按钮的单据
private void ShowForm5() { MobileBillShowParameter param = new MobileBillShowParameter(); param.FormId = "kd_CCSQYS"; param.ParentPageId = this.View.PageId; param.PKey = "100027"; param.Status = OperationStatus.EDIT; param.Height = 240; param.Width = 300; param.OpenStyle.ShowType = ShowType.Floating; JSONObject obj = new JSONObject(); obj.Put("shadeClose", false); //不带关闭按钮 obj.Put("closeBtn", false); param.LayerOptions = obj; this.View.ShowForm(param); }
3.7. ShowForm的表单从底部、左边、右边滑出
private void ShowForm6(int width,int height,string offsetStyle = "b") { MobileBillShowParameter param = new MobileBillShowParameter(); param.FormId = "kd_CCSQYS"; param.ParentPageId = this.View.PageId; param.PKey = "100027"; param.Status = OperationStatus.EDIT; param.Width = width; param.Height = height; param.OpenStyle.ShowType = ShowType.Floating; param.OffsetStyle =offsetStyle;//停靠位置:t、tl、tr、b、bl、br、l、r(t表示top、r表示right、b表示bottom、l表示left) this.View.ShowForm(param); }
// 窗口底部停靠
ShowForm6(320, 240, "b");
// 窗口左边停靠
ShowForm6(280, 480, "l");
// 窗口右边停靠
ShowForm6(280, 480, "r");
3.8. ShowForm的表单在指定位置停靠
private void ShowForm7() { MobileBillShowParameter param = new MobileBillShowParameter(); param.FormId = "kd_CCSQYS"; param.ParentPageId = this.View.PageId; param.PKey = "100027"; param.Status = OperationStatus.EDIT; param.Width = 200; param.Height = 300; param.OpenStyle.ShowType = ShowType.Floating; param.VOffset = 20;//指定位置:top ,实际值=VOffset*屏高/表单高 param.HOffset = 20;//指定位置:left ,实际值=HOffset*屏宽/表单宽 this.View.ShowForm(param); }
3.9. ShowForm的表单在指定控件下面停靠
private void ShowForm8() { MobileBillShowParameter param = new MobileBillShowParameter(); param.FormId = "kd_CCSQYS"; param.ParentPageId = this.View.PageId; param.PKey = "100027"; param.Status = OperationStatus.EDIT; param.Height = 200; param.OpenStyle.ShowType = ShowType.Modal; //指定按钮下停靠(标识:F_ORA_BUTTON9) param.LayerOptions = new JSONObject(); param.LayerOptions.Put("tagetId", "F_ORA_BUTTON9"); param.OffsetStyle = "offset"; //可选:关闭后触发回调 JSONObject jSONObject = new JSONObject(); jSONObject.Put("key", "isOk"); //key 的值可自定义 jSONObject.Put("value", "1");//value 的值可自定义 param.LayerOptions.Put("endFunOption", jSONObject); //关闭后触发的回调事件AfterMobileClientRequest,key和value会以参数传入 this.View.ShowForm(param); }
3.10. ShowForm移动单据列表时指定过滤条件、携带自定义参数
注:这里ShowForm的移动单据列表与3.3相同,过滤后数据不同
private void ShowForm9() { MobileListShowParameter param = new MobileListShowParameter(); param.FormId = "kd_CCSQYS"; param.ParentPageId = this.View.PageId; param.OpenStyle.ShowType = ShowType.Modal; //设置自定义参数c param.CustomParams.Add("c",1) //设置过滤条件 var listShowParam = ((ListShowParameter)param); listShowParam.IsLookUp = true; listShowParam.ListFilterParameter.Filter = " FID=100027 ";//过滤条件 this.View.ShowForm(param); }
//ShowForm后获取自定义参数c:
this.View.OpenParameter.GetCustomParameter("c")
移动BOS - ShowForm打开详解
本文2024-09-23 04:15:33发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-164151.html