using System.Collections.Generic; namespace WalkingTec.Mvvm.Core { /// /// GridActionExtension /// public static class GridActionExtension { /// /// 按钮Id,一般不需要设定,系统会自动生成唯一Id。如果设定请确保 Id 的唯一性 /// /// /// /// public static GridAction SetButtonId(this GridAction self, string buttonId) { self.ButtonId = buttonId; return self; } /// /// 按钮名称 /// /// /// /// public static GridAction SetName(this GridAction self, string name) { self.Name = name; return self; } /// /// 弹出窗口的标题 /// /// /// /// public static GridAction SetDialogTitle(this GridAction self, string dialogTitle) { self.DialogTitle = dialogTitle; return self; } /// /// 动作图标css /// /// /// /// public static GridAction SetIconCls(this GridAction self, string iconCls) { self.IconCls = iconCls; return self; } /// /// 动作的Area /// /// /// /// public static GridAction SetArea(this GridAction self, string area) { self.Area = area; return self; } /// /// 动作的Controller /// /// /// /// public static GridAction SetControllerName(this GridAction self, string controllerName) { self.ControllerName = controllerName; return self; } /// /// 动作的Action /// /// /// /// public static GridAction SetActionName(this GridAction self, string actionName) { self.ActionName = actionName; return self; } /// /// 动作的QueryString /// /// /// /// public static GridAction SetQueryString(this GridAction self, string queryString) { self.QueryString = queryString; return self; } /// /// 弹出窗口的宽度、高度 /// /// /// /// /// public static GridAction SetSize(this GridAction self, int? dialogWidth, int? dialogHeight) { self.DialogWidth = dialogWidth; self.DialogHeight = dialogHeight; return self; } /// /// 是否需要弹出窗口 /// /// /// /// public static GridAction SetShowDialog(this GridAction self, bool showDialog = true) { self.ShowDialog = showDialog; return self; } public static GridAction SetForcePost(this GridAction self, bool forcepost = true) { self.ForcePost = forcepost; return self; } /// /// 是否跳转到新页面 /// /// /// /// public static GridAction SetIsRedirect(this GridAction self, bool isRedirect = true) { self.IsRedirect = isRedirect; return self; } /// /// 动作类型 /// /// /// /// public static GridAction SetParameterType(this GridAction self, GridActionParameterTypesEnum parameterType) { self.ParameterType = parameterType; return self; } /// /// 如果不为null,则只运行这个变量设定的script,其他的属性都不起作用 /// /// /// /// /// 如设置SetOnClickScript("test"),点击按钮时框架会调用页面上的javascript方法: function test(ids,datas){} /// ids是勾选的id数组,datas是勾选的所有字段数组 /// /// public static GridAction SetOnClickScript(this GridAction self, string onClickScript) { self.OnClickFunc = onClickScript; return self; } /// /// 如果设定了SubActions,则代表需要用SplitButton的形式展示,主GridAction将不起作用 /// /// /// /// public static GridAction SetSubAction(this GridAction self, params GridAction[] gridActions) { if (self.SubActions == null) { self.SubActions = new List(); } self.SubActions.AddRange(gridActions); return self; } /// /// 是否可以拖动改变弹出窗体大小 /// /// /// /// public static GridAction SetNotResizable(this GridAction self, bool resizable = false) { self.Resizable = resizable; return self; } /// /// 设置一个布尔值的列名,当改列值为true的时候才显示本行的这个动作按钮 /// /// /// /// public static GridAction SetBindVisiableColName(this GridAction self, string colName) { self.BindVisiableColName = colName; return self; } } }