易截截图软件、单文件、免安装、纯绿色、仅160KB

asp.net2.0的TreeView对checkbox的操作

大家会在ASP.NET 2.0使用TreeView控件时发现带有CheckBox控件的TreeNode对象(TreeView节点),选择CheckBox无法回发页面。在MSDN中对于TreeView.TreeNodeCheckChanged事件有一段备注:“当 TreeView 控件的复选框在两次向服务器发送之间更改状态时,会引发 TreeNodeCheckChanged 事件。这使您可以提供一个这样的事件处理方法,即每次发生此事件时执行一个自定义例程(如更新数据库或显示的内容)。尽管 TreeNodeCheckChanged 事件在回发时激发,但更改复选框不会导致回发。”说明框架本身并不能提供一个CheckBox回发的机制,为了实现集联的选择,笔者实现了一种使用JavaScript去回发的方法,变相的解决了这个问题,尽管这样的方法看上去很不美,但是一定程度上能解决我们的实际问题。
大致思路,TreeNode对象输出的是一个附和的HTML对象(包括TD,A,InputCheckBox……),本身没有办法增加客户端脚本,所以为TreeView控件客户端的onclick事件中加入脚本,脚本目的:对于引发事件的对象都做判断,如果是InputCheckBox对象导致的事件,则直接调用__doPostBack来回发页面。至于后台代码就思路就简单了,递归选择相关节点,设置其Checked属性就好了。
下面的实例实现了,集联选择当前选中节点的所有子节点功能。
代码部分:
服务器端的方法:
 
treeview.js
 1 <script>
 2 
 3 function postBackByObject()
 4 
 5 {
 6 
 7     var o = window.event.srcElement;
 8 
 9     if (o.tagName == "INPUT" && o.type == "checkbox")
10 
11     {
12 
13        __doPostBack("","");
14 
15     } 
16 
17 }
18 
19</script>
treeview.aspx.cs
 1 protected void TreeView1_TreeNodeCheckChanged(object sender, TreeNodeEventArgs e)
 2     {
 3  if (e.Node.ChildNodes.Count > 0)
 4      &n


相关文档:

Asp.net中DataBinder.Eval 用法

Asp.net中DataBinder.Eval用法的总结
<%# Bind("Subject") %> //绑定字段
<%# Container.DataItemIndex + 1%> //实现自动编号
<%# DataBinder.Eval(Container.DataItem, "[n]") %>
通常使用的方法(这三个性能最好)
<%# DataBinder.Eval(Container.DataItem, "ColumnName") %>
<%# DataBi ......

ASP.NET 2.0中直接得到本页面生成的HTML代码


在ASP.NET 2.0中,有时候需要对ASP.NET生成的HTML代码进行处理,或者是保存成静态文件。ASP.NET 提
供了直接将请求保存成文件的方法:HttpRequest.SaveAs方法。下面这个方法就是在ASP.NET 2.0中得到
ASP.NET生成的HTML代码,同时,生成一个静态文件的方法。
C#
<%@ Page Language="C#" AutoEventWireup="true" %&g ......

ASP.NET2.0网站配置的数据库连接失败问题

在使用网站管理工具做登录页面的时候遇到的问题
所遇问题:进入Visual Studio 2005的“网站”菜单的“ASP.NET 配置”后,点击“安全”后,出现如下的出错信息:
      “选定的数据存储区出现问题,原因可能是服务器名称或凭据无效,或者权限不足。也可能是 ......

让ViewState 保存于服务器端文件 (asp.net C#)

将ViewState持久化保持在服务器端文件的代码,这样ViewState不占用网络带宽,因此其存取只是服务器的磁盘读取时间。并且它很小,可以说是磁盘随便转一圈就能同时读取好多ViewState,因此可以说“不占时间”。为了再“不占磁盘时间”,我还使用了缓存。
创建一个基类:
public class
BasePage : Sys ......

asp.net提交html标记后的最优安全处理

ASP.Net 1.1后引入了对提交表单自动检查是否存在XSS(跨站脚本攻击)的能力。当用户试图用之类的输入影响页面返回结果的时候,ASP.Net的引擎会引发一个 HttpRequestValidationExceptioin。默认情况下会返回如下文字的页面:
以下是引用片段:
Server Error in '/YourApplicationPath' Application
A potentially dangerou ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号