页面(下文称父页面)实现功能是对多地用户的操作,具体如下:点击按钮,弹出有树状地区的模式对话框供选择,选择完地区返回后父页面立即显示出该地区的用户,之后对用户进行操作。

实现思路:父页面上放GridView,SqlDataSource,用HiddenField接收地区信息,在SqlDataSource的Selecting事件中更新SelectCommand的参数,达到更新GridView显示数据的目的。

然而在编码的过程中遇到问题:当地区信息返回至父页面后,Selecting事件无法激活,尽管在Page_Load方法中已对SelectCommand进行了重新赋值。于是给HiddenField添加ValueChanged事件,在该事件中对SelectCommand重新赋值,激活Selecting事件。

代码片段如下:

protected void Page_Load(object sender, EventArgs e){if (HiddenField1.Value != "")   // 选择了机构,则显示该机构的用户{ViewState["orgid"] = HiddenField1.Value;    // 保存机构代码HiddenField1.Value = "";}}


protected void SqlDataSource1_Selecting(object sender, SqlDataSourceSelectingEventArgs e){// 创建并添加存储过程的查询参数SqlParameter pa = new SqlParameter("@orgID", DbType.String);pa.Direction = ParameterDirection.Input;pa.Value = ViewState["orgid"].ToString().Trim();e.Command.Parameters.Add(pa);}

protected void HiddenField1_ValueChanged(object sender, EventArgs e){if (ViewState["orgid"] != null)   // 选择了机构,则显示该机构的用户{SqlDataSource1.SelectCommand = "select_user";SqlDataSource1.SelectCommandType = SqlDataSourceCommandType.StoredProcedure;}}
												

SqlDataSource的Selecting事件使用心得相关推荐

  1. asp.net学习之SqlDataSource 2 select的四种参数赋予形式的解释

    通过 SqlDataSource 控件,可以使用 Web 服务器控件访问位于关系数据库中的数据.其中可以包括 Microsoft SQL Server 和 Oracle 数据库以及 OLE DB 和 ...

  2. 关于ASP.NET Web 部件连接的引入

    创建用于 ASP.NET 2.0 应用程序的 Web 部件 您可以用两种方法创建 Web 部件.第一种方法涉及创建一个自定义的 Web 部件类,该类从 System.Web.UI.WebControl ...

  3. ASP.NET2.0_缓存

    1.页面缓存:      页面输出缓存用于缓存页面呈现的所有内容(当在浏览器中选择查看源码能看的所有内容)到内存中. 注:页面输出缓存作用于整个页面. 1.1部分页面缓存通过只缓存页面上的一个特定区域 ...

  4. 一步一步学习ObjectDataSource--(3)

    ObjectDataSource公开了一些事件,这些事件基本上和SQL语句对应,SQL语句包含Select,Update,Delete和Insert,所以ObjectDataSource定义了Sele ...

  5. 转: ASP.NET2.0_缓存

    转: http://www.cnblogs.com/arishuang/archive/2008/10/05/1303990.html 1.页面缓存:      页面输出缓存用于缓存页面呈现的所有内容 ...

  6. 将object类型参数值传递给ObjectDataSource

    在使用ObjectDataSource时,如果要设置SelectParameters的默认值,则复制该参数的DefaultValue属性.但是这个DefaultValue是string类型,如果想要传 ...

  7. 一步一步玩控件:自定义TabControl——从山寨Safari开始

    作者:野比 (conmajia@gmail.com) 时间:May, 2012 封面图片为野比原创,请勿未经允许私自引用 #1-1 嗯,各位,又是我,生物钟颠倒的家伙. 今天我要山寨的是大名鼎鼎的Ap ...

  8. 有关绑定没有数据显示的问题

    1.gridview里面有一个属性:EmptyDataText="暂无数据记录" 2.如果是数据源控件的话sqlDataSource 有一个事件_selected里面判断 //这是 ...

  9. Web Client Software Factory系列(4):数据绑定和ObjectContainerDataSource控件

    概述 在Web Client Software Factory系列(3):View-Presenter模式中提到,表示器包含了响应用户事件逻辑以及一些View的状态等,在Web Client Soft ...

最新文章

  1. nagios监控三部曲之——为什么nagios不能发送报警邮件(2)
  2. 连接Oracle错误:800a0e7a未找到提供程序的解决
  3. 使用MUI/html5plus集成微信支付需要注意的几点问题
  4. aix cpu java_AIX cpu理解
  5. 企业移动应用平台:走进SAP SUP的世界
  6. C#实现写入文本文件内容功能
  7. 杨飞:擅长顺势而为,收获家业两成
  8. TensorFlow构建二维数据拟合模型(3)
  9. [译]时间自动机:语义,算法和工具
  10. 不会延期!iPhone 12S预计如期在9月发售:升级三星LTPO屏幕
  11. ssas 维度属性_Analysis Services(SSAS)多维数据集–维度属性和层次结构
  12. 中低频量化交易策略研发06_推进的择时策略
  13. E: Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/t
  14. 大数据技术落地需要注意哪些问题
  15. 今天,启动MySQL服务器失败,
  16. opkg-utils的PKGBUILD文件,参考自OE的opkg-utils_git.bb
  17. eSpeak: Linux文本转语音工具
  18. Pygame做一期吃豆子游戏
  19. [08.3][转贴][美国][动作][第一滴血1][DVD-RMVB/308M][英语中字]
  20. Java常用加密解密算法全解

热门文章

  1. DNSlog平台详解
  2. 半开连接(half-open connection)
  3. 人脸裁剪 人脸识别图片裁剪 多人脸裁剪
  4. python简单爬虫案例 [批量爬取文案]
  5. 不够慷慨,也要芳香四溢
  6. java异常[java.util.regex.patternsyntaxexception dangling meta character ‘+‘ near index]解决
  7. 【开源我写的富文本】打造全网最劲富文本系列之大话技术难点与特色设计。...
  8. ubuntu 16.04与win7双系统安装图解
  9. 百度快速收录,百度新网站快速收录服务是什么site首页收录
  10. vue 更改头像功能实现