GridView既强大又好用。为了让它更强大、更好用,我们来写一个继承自GridView的控件。
[索引页]
[源码下载]


扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性


作者:webabcd


/*正式版的实现 开始*/

介绍
扩展GridView控件:
根据按钮的CommandName设置其客户端属性

使用方法(设置ClientButtons集合属性):
BoundCommandName - 需要绑定的CommandName
AttributeKey - 属性的名称
AttributeValue - 属性的值(两个占位符:{0} - CommandArgument;{1} - Text)
Position - 属性的值的位置


关键代码
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性using System;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Collections.Generic;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Text;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Web.UI.WebControls;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Web.UI;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
namespace YYControls.SmartGridViewFunction

/*正式版的实现 结束*/


/*测试版的实现 开始*/

介绍
给按钮增加单击弹出确认框的功能是经常要用到的,我们一般是通过在RowDataBound事件里编码的方式实现,麻烦,所以扩展一下。


控件开发
1、新建一个继承自GridView的类。
}

2、新建一个ConfirmButton类,有两个属性
    }

3、新建一个继承自CollectionBase的类ConfirmButtons
    }

4、新建一个继承自ExpandableObjectConverter的类ConfirmButtonConverter
    }

5、在继承自GridView的类中加一个复杂对象属性,该复杂对象就是第3步创建的那个ConfirmButtons
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性        private ConfirmButtons _confirmButtons;

6、重写OnRowDataBound实现单击命令按钮弹出确认框的功能。主要是给按钮增加一个客户端的onclick事件。


控件使用
添加这个控件到工具箱里,然后拖拽到webform上,设置其ConfirmButtons属性即可。CommandName是命令按钮的CommandName属性;ConfirmMessage是弹出的确认框所显示的文字。
ObjData.cs
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性using System;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Data;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Configuration;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Web;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Web.Security;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Web.UI;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Web.UI.WebControls;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Web.UI.WebControls.WebParts;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.Web.UI.HtmlControls;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性
using System.ComponentModel;
扩展GridView控件(3) - 根据按钮的CommandName设置其客户端属性

Default.aspx

/*测试版的实现 结束*/


OK
[源码下载]

相关文章: