流程平台:子表控件(二) - 属性、事件、方法

子表控件的元数据如下:属性、事件、方法:

    public class SheetSubTableSZ : WebControl, ISheetControl{//     分隔符public const char Separator = ';';public const string SeqNoColumnName = "序号";//     添加按钮public Button Add;//     子表的编辑视图public Table EditTable;//     子表的显示视图public GridView ItemView;public Button Remove;public Label Result;public Button Update;public SheetSubTableSZ();public override Color BackColor { get; set; }//     当前表的列定义protected Dictionary<string, DataColumn> Columns { get; }//     绑定字段public string DataField { get; set; }//     如果使能,则显示编辑控件和选中列public override bool Enabled { get; set; }public override string ID { get; set; }//     新建的项目的IDpublic string NewItemIdsText { get; set; }//     是否是必输public bool Required { get; }//     从数据库中获得当前控件中行的数量public int RowCount { get; }//     对应的表名称public string TableName { get; }//     页脚加载事件public event EventHandler<SheetSubTableSZ.CountingEventArgs> Counting;//     编辑器初始化事件public event EventHandler<SheetSubTableSZ.EditorInitializingEventArgs> EditorInitializing;//     编辑器加载事件public event EventHandler<SheetSubTableSZ.EditorLoadingEventArgs> EditorLoading;//     编辑器保存事件public event EventHandler<SheetSubTableSZ.EditorSavingEventArgs> EditorSaving;public event EventHandler<GridViewCommandEventArgs> RowCommand;//     数据绑定事件public event EventHandler<GridViewRowEventArgs> RowDataBound;public void Add_Click(object sender, EventArgs e);public object AvgColumn(string ColumnName);//     创建执行SQL的对象protected ICommand CreateCommand();//     根据列名称检索列 public int GetColumnIndex(string ColumnName);public static Control GetDefaultControl(string ColumnName, Type ColumnType);public static string GetDefaultControlValue(string ColumnName, Type ColumnType, Control Control, ref bool Valid, ref string ErrorMessage);//     获得某个列的编辑控件public Control GetEditControl(string ColumnName);//     设置字段/列显示名称和描述public static void GridView_SetCellHeaderText(GridViewRowEventArgs e, string s_FieldName, string s_HeaderText);//     设置列不可见/隐藏public void GridView_SetCellNotVisible(GridViewRowEventArgs e, string s_FieldName);//     是否是保留系统列protected bool IsSysColumn(string ColumnName);//     加载数据public virtual void LoadDataField(ISheetPage SheetPage);//     加载所有数据//yzg:加载所有数据到GridViewpublic void LoadTable();protected override void OnInit(EventArgs e);protected override void OnLoad(EventArgs e);protected override void Render(HtmlTextWriter writer);public virtual void SaveDataField(ISheetPage SheetPage);//     设置字段标签和控件的样式public void SetColumnCss(string columnName, string label_style, string control_style, string desc_style);//     设置字段的显示名称和描述public void SetColumnDisplayNameDesc(string columnName, string displayName, string description);//     设置列隐藏或显示public void SetColumnVisiable(string columnName, bool EditVisible, bool GridCellVisible);public static void SetDefaultControlValue(string ColumnName, Type ColumnType, Control Control, object Value);//     设置字段的显示名称和描述public void SetSortColumn(string columnName, SheetSubTableSZ.SortType sortType);//     设置子表控件GridView的模板列public void SetTemplateColumns(DataControlField columnName);public object SumColumn(string ColumnName);public void Update_Click(object sender, EventArgs e);//     验证输入public virtual bool ValidateDataField(ISheetPage SheetPage, SheetSubmitEventArgs Args, List<string> Errors);//     子表操作方式public enum ActionType{//     添加操作Add = 0,//     更新操作Update = 1,//     删除操作Remove = 2,//     加载数据操作LoadData = 3,//     无操作None = 4,}//     页脚的加载方式public enum CountingType{//     总和Sum = 0,//     平均Avg = 1,//     计数Count = 2,//     不做统计None = 3,}//     子表排序类型public enum SortType{//     升序Asc = 0,//     降序Desc = 1,//     默认Normal = 2,}//     页脚加载事件public class CountingEventArgs : EventArgs{public CountingEventArgs(string ColumnName, SheetSubTableSZ.CountingType CountingType);//     列名称public string ColumnName { get; }//     统计方式public SheetSubTableSZ.CountingType CountingType { get; set; }}//     编辑器初始化事件public class EditorInitializingEventArgs : EventArgs{public EditorInitializingEventArgs(string ColumnName, Type ColumnType);//     列名称public string ColumnName { get; }//     列的类型public Type ColumnType { get; }//     编辑控件public Control Control { get; set; }public string Description { get; set; }//     显示名称public string DisplayName { get; set; }//     该控件是否可见public bool Visible { get; set; }}//     编辑器加载事件public class EditorLoadingEventArgs : EventArgs{public EditorLoadingEventArgs(string ColumnName, Type ColumnType, object Value, Control Control);//     当前行所有单元格和值public Dictionary<string, string> Cells { get; set; }//     列名称public string ColumnName { get; }//     列类型public Type ColumnType { get; }//     编辑控件public Control Control { get; }//     如果设置了值,则把这个属性设置为truepublic bool Set { get; set; }//public object Value { get; }}public class EditorSavingEventArgs : EventArgs{public EditorSavingEventArgs(string ColumnName, Control Control);//     子表操作类型:Add , Updatepublic SheetSubTableSZ.ActionType Action { get; set; }//     当前行所有单元格和值public Dictionary<string, string> Cells { get; set; }//     列名称public string ColumnName { get; }//     编辑控件public Control Control { get; }//     如果不合法则设置错误消息public string ErrorMessage { get; set; }//     是否获得public bool Get { get; set; }//     值是否合法public bool Valid { get; set; }//     值的字符串形式public string Value { get; set; }}}

 

转载于:https://www.cnblogs.com/devinner/archive/2013/04/26/3045241.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/408913.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

nginx php7 win,Win7配置Nginx+PHP7

NginxNginx有官方native build的32bit版本, 也有cygwin build的64bit版本, 出于稳定性的考虑, 还是选了官方的32bit.解压, 本例中使用的路径是 C:\Servers\nginx-1.9.12 , 创建两个bat, 用于启动和关闭nginx:start_nginx.bat1234echooffsetNGINX_HOMEC:\Servers\nginx-1.9.12st…

(转)Thrift在Windows及Linux平台下的安装和使用示例

转载自Thrift在Windows及Linux平台下的安装和使用示例 thrift介绍 Apache Thrift 是 Facebook 实现的一种高效的、支持多种编程语言的RPC(远程服务调用)框架。 本文主要目的是分别介绍在Windows及Linux平台下的Thrift安装步骤&#xff0c;以及实现一个简单的demo演示Thrif…

CPP第四版第四章:创建动态数组

数组类型的变量有三个重要限制&#xff1a; 数组长度固定不变 在编译时必须知道其长度 数组只在定义它的块语句内存在 每一个程序在执行时都占用一块可用的内存空间&#xff0c;用于存放动态分配的对象&#xff0c;此内存空间称为程序的自由存储区或堆…

matlab中数据变为nan,字符转化为数值型中出现NAN

我将字符型转化为数值型&#xff0c;然后画图&#xff0c;结果图形没有曲线&#xff0c;这是怎么回事&#xff1f;我用的函数是str2double和str2num都试了&#xff0c;都不行。我的程序如下,其中的E2(i)的值我用matlab计算了&#xff0c;为什么是这么庞大的一个数&#xff1f;这…

(转)在Windows上安装GPU版Tensorflow

转载自在Windows上安装GPU版Tensorflow。 1. 下载安装Anaconda 简单说就是下载 64位 python 3.5 版本的Anaconda https://www.continuum.io/downloads#windows 安装情况&#xff1a;新机&#xff0c;未装python。 注意 a. Windows只支持64位 python 3.5 https://www.ten…

(转载)Linux僵死进程的产生与避免

&#xff08;转载&#xff09;http://blog.chinaunix.net/uid-23089249-id-210808.html一个进程在调用exit命令结束自己的生命的时候&#xff0c;其实它并没有真正的被销毁&#xff0c; 而是留下一个称为僵死进程&#xff08;Zombie&#xff09;的数据结构&#xff08;系统调用…

php怎么查询数据库密码,如何验证php中的密码是通过mysql查询手动散列插入到数据库中的?...

有没有办法通过自己的散列方法插入mysql数据库的php验证密码&#xff1f;例如,如果我手动在表中插入用户数据,请假设用户表,如下所示&#xff1a;INSERT INTO users (email, pswd) VALUES (demoexample.com, SHA1(pass123));让我们假设mysql数据库中的哈希密码是&#xff1a;--…

(转)非极大抑制(Non-Maximum Suppression)

转载自非极大抑制&#xff08;Non-Maximum Suppression&#xff09;。 参考文章&#xff1a; 1. Non-Maximum Suppression for Object Detection in Python 2. NMS非极大值抑制 最近在做人脸识别的项目&#xff0c;其中在人脸检测算法中MTCNN算法是用到了NMS算法来筛选候选…

安装配置Eclipse开发PHP环境配置

文章结束给大家来个程序员笑话&#xff1a;[M] Eclipse发开PHP环境配置 首先准备好件软&#xff1a; 1. Apache,到这里找个最新本版 2. PHP&#xff0c;到这里下载 3. Eclipse IDE for Java EE Developers&#xff0c;到这里下载 4. DLTK Core Frameworks 1.0 Integration buil…

C++ 输入一行未知个数的整数

最近笔试的时候&#xff0c;编程题遇到这样要求的输入&#xff0c;需要输入一行整数&#xff0c;个数未知&#xff0c;然后整数之间用空格间隔&#xff0c;如下所示&#xff1a; 11 22 333 45 62 代码如下所示&#xff1a; int main() {vector<int> inputs;int n 0, …

mysql5.7.20中文,ubuntu16.04 mysql5.7.20表中插入中文顯示???的解決方法

打開配置文件&#xff1a;sudo gedit /etc/mysql/my.cnf在最下面添加&#xff1a;[client]default-character-setutf8[mysqld]character-set-serverutf8[mysql]default-character-setutf8保存暫停mysql服務&#xff1a;sudo /etc/init.d/mysql stop重啟mysql服務&#xff1a;su…

[原]好玩的Linux,关于时间cal命令

我们都知道&#xff0c;在Linux中&#xff0c;可以通过cal命令来查看日历。Cal怎么用呢&#xff0c;我们可以man一下&#xff0c;可以看到如下结果&#xff1a; 我们可以看到cal命令的基本用法如下&#xff1a;cal [-smjy13] [[[day] month] year] 当然如果不加指定参数的话&a…

python appium自动化测试平台开发,Python+Appium实现自动化测试

一、环境准备1.脚本语言&#xff1a;Python3.x IDE&#xff1a;安装Pycharm2.安装Java JDK 、Android SDK3.adb环境&#xff0c;path添加E:\Software\Android_SDK\platform-tools4.安装Appium for windows&#xff0c;官网地址http://appium.io/点击下载按钮会到GitHub的下载…

基于CNN的增量学习论文的读后感

最近在阅读几篇基于CNN的增量学习的论文。 《INCREMENTAL LEARNING WITH PRE-TRAINED CONVOLUTIONAL NEURAL NETWORKS AND BINARY ASSOCIATIVE MEMORIES》 09-19 阅读 第一篇论文是《INCREMENTAL LEARNING WITH PRE-TRAINED CONVOLUTIONAL NEURAL NETWORKS AND BINARY ASSOC…

Chrome浏览器兼容性 检测工具 (chrome插件)

近日 Google Chrome 组发起了浏览器兼容性检测工具(Chrome扩展)开源项目&#xff0c;能够自动检测网页中的兼容性问题。此工具已经实现了检测2010年9月Google在 Devfest北京会议上推出的w3help.org站点内所描述的部分兼容性问题。是前端兼容性工作必备辅助开发工具。 目前的版本…