惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
GRAHAM CLULEY
T
Tenable Blog
Know Your Adversary
Know Your Adversary
C
CXSECURITY Database RSS Feed - CXSecurity.com
P
Privacy International News Feed
S
Security Affairs
NISL@THU
NISL@THU
O
OpenAI News
Attack and Defense Labs
Attack and Defense Labs
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Hacker News: Ask HN
Hacker News: Ask HN
Webroot Blog
Webroot Blog
Schneier on Security
Schneier on Security
S
SegmentFault 最新的问题
S
Schneier on Security
G
Google Developers Blog
V
V2EX
C
Check Point Blog
U
Unit 42
Google DeepMind News
Google DeepMind News
T
Threatpost
阮一峰的网络日志
阮一峰的网络日志
T
The Exploit Database - CXSecurity.com
Recent Announcements
Recent Announcements
M
MIT News - Artificial intelligence
S
Secure Thoughts
博客园 - 司徒正美
Recorded Future
Recorded Future
P
Proofpoint News Feed
Spread Privacy
Spread Privacy
K
Kaspersky official blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
AI
AI
博客园 - 聂微东
N
News and Events Feed by Topic
SecWiki News
SecWiki News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
V
Vulnerabilities – Threatpost
P
Palo Alto Networks Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Engineering at Meta
Engineering at Meta
Recent Commits to openclaw:main
Recent Commits to openclaw:main
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
The Hacker News
The Hacker News
The Last Watchdog
The Last Watchdog
Project Zero
Project Zero
W
WeLiveSecurity
博客园 - Franky

博客园 - HelloSnoopy

写了个用一个文件定义样式的DataGrid 一个最基本的WebService+Flash调用的实例 [转载]如何奔向程序员打工的出头之日? 一定要讲给孩子们的20个小故事 人脉对职业生涯最重要 (转) 爱情的10种样子,送给懂爱的朋友们 装了Enterprise Library.NET 200501release C#判断是否为数字的最好速度! 开源的 BugTracker.net 错误跟踪管理系统 Enjoy new year of 2005! Flash AS2 用EventDispatcher广播事件 设计模式随笔-让众口不再难调 CodeSmith使用心得 [专题]MVC构架模式 使用Microsoft Application Block之Cache Application 用一条SQL完成数据表的行统计 如何使IFrame的长宽与内容自动适应大小 用于读取树形任一节点下所有级别子节点的SqlServer UDF asp.net forums中定时器的应用
为Project提供一个统一风格的DataGrid
HelloSnoopy · 2004-12-23 · via 博客园 - HelloSnoopy

基本上,一个Project中我们使用的控件风格都是一致的,比如DataGrid控件,他的页眉,页脚,行的字体颜色,交替行的背景色等等,我们不太可能每次使用这个控件都去设置一次这些属性,这绝对是一件很烦人的事。通常情况下我们会使用css来定义这些风格,然后再去分别定义DataGrid的ItemStyle,HeaderStyle等等的css属性,不过即便如此,几次这样的经历后,我还是觉得这实在是一件很烦人的事情,为什么不可以我不去设置这些风格属性,而他们每次都保持我所需要的风格呢?
通过继承标准DataGrid控件,可以来比较轻易的实现这个需求,我要做的就是读取某个xml文件或者config文件里面的样式设定(这种情况下一般不使用web.config文件,因为修改风格绝对是一件常见的事情,但是如果放入web.config中,每次修改web.config都引起应用程序重启,这可不太好.)
由于只涉及风格的显示,因此只需要重载OnPreRender

如下面类似的代码:

这段代码中作的就是从一个.config文件中读取了相关的配置节,并且存入Cache中,一旦修改了.config文件,则立即重新读取,接下来在if(cache["TSDataGridConfig"] != null){}块中要做的就是将对应的配置节点的值设置到DataGrid的相关属性,例如:

   

基本上我们已经可以使用这个控件来代替原来的标准DataGrid了,末了,还有一件比较浪费体力的事情,那就是DataGrid项的删除确认,因此可以继续在这里重载OnItemDataBound,类似代码如下:

 

这里,我将删除的LinkButton ID假定为lbtnDelete,当然可以公开成一个属性了,不过我比较懒,因为我们还可以继续在调用页重载这个事件,如果我们确实需要的话....这样只要调用页用来执行删除Command的LinkButton Id为lbtnDelete,将会自动触发删除确认,不需要我们每次都去重复编写这段代码了.

DataGrid风格配置节片断:

  来自MMKK's blog :http://blog.joycode.com/mmkk/