`

RadioButtonList的数据绑定故事

 
阅读更多

才上两天班又能休息两天,本来今天的心情还是不错的,谁知被RadioButtonList折腾到深更半夜,实在是有些郁闷。所谓有苦就要吐出来,和大家一起分担,也好抚慰一下受伤的心灵吧。

故事的发生是这样的。话说今天在搞一个程序,要在一个页面上处理相当复杂的业务,我一般不太喜欢这么干,但用户却喜欢,因为和自己的工作习惯比较一致,没办法,这就叫用户体验吧,作为程序员总是应该尽自己最大的努力去满足的。asp.net设计的初衷就是用尽可能少的页面来实现需要的功能,但实际使用中大家都知道,过多的回滚数据会降低程序运行的效率,来回的刷新会破坏用户的体验,所以,后来又有了ajax,当然还得有javascript携jquery,以使用户的操作更加贴近自然,从而达到人机合一的完美境界。

用户是爽了,但带给程序员的却是越来越复杂的编程技术,有时看着满目的代码,真想拿出C#自吻算了。今天我的遭遇基本就是如此,为了给用户提供一个良好的使用环境,我不惜动用了所有最热门的技术,也把自己搞的晕头转向,最终陷落于RadioButtonList的数据绑定中。它本来是一个挺普通的控件,我们一直用它,挺好的,但今天不知怎么搞的,就是不听使唤了。本来,我是想绑定一些物料信息到这个控件上去,当然,这些物料信息是来源于数据库,用SQL语句获取。为了不影响用户的心情,这段操作是放在UpdatePannel中的,然后,我想通过输入一些条件,然后把找到的物料信息绑定到RadioButtonList控件上,接下来用户选中需要的那一条数据,按“确定”按钮后,将该数据绑定再绑定到其它控件上。这时问题就出来了,无论我选择哪一条数据,实际都只能选中第一条,而且当页面刷新后,默认选中的值也都回来了第一条,按理说在默认情况下,控件是能够保持所谓“视图状态”的。于是,我怀疑ajax的影响,jquery的影响,控件本身的设置,反正就这样试来试去直到下班。晚上本来是想好好休息的,但最终还是逃不过程序员的宿命,就是放不下,都半夜了还是拨通了公司的vpn,登录到自己的工作电脑继续找原因。

既然都在这儿叨叨了,你也就知道已经搞定,你猜是啥原因,说出来真是气死人。原来,问题只是出在数据绑定上,跟别人一点儿关系没有。我在给RadioButtonList绑定数据时,给它的值指定的字段是物料编码,要绑定的数据是同一物料存放的所有货位,那么这个物料编码对于每条数据来说都是一样的。

然后,悲剧就发生了。

分享到:
评论

相关推荐

    DataList模板的RadioButtonList控件绑定数据的方法

    DataList模板的RadioButtonList控件绑定数据的方法

    ASP.NET中RadioButtonList绑定后台数据后触发点击事件

    本文实例为大家分享了RadioButtonList绑定后台数据,触发点击事件的方法 首先前台页面放置一个RadioButtonList 控件 <asp runat=server ID=RadioButtonList1 BorderStyle=None RepeatColumns=3 CssClass= ...

    RadioButtonList绑定图片及泛型Dictionary应用

    首先准备好几张图片存在站点某一目录之下,本例中的存储图片的目录名为MsSiteImages,图片你可以从微软网站下载http://windows.microsoft.com/en-US/windows/home 我们写一个泛型数据集,将存储目录的图片信息: ...

    读取XML并绑定至RadioButtonList实现思路及演示动画

    读取XML的文档,可以使用System.Data.DataSet类别中的ReadXml()方法,在aspx网页上拉一个RadioButtonList控件,用来显示XML的数据,接下来,用DataSet去读取刚才写好的获取XML文件的属性,即可完成

    Asp.Net中的数据源概述与配置及实例代码

    数据源 数据绑定分为数据源和数据绑定控件两部分,数据绑定控件通过数据源来获得数据,通过数据源来隔离数据提供...数据绑定控件有列表数据绑定控件(DropDownList、RadioButtonList、ListBox、CheckBoxList、BulletedL

    ASP.NET 控件的使用

    8.4.3 使用两种数据绑定表达式 247 8.5 SQL Server 2005 Express 概述 248 8.5.1 SQL Server Express 特性 248 8.5.2 SQL Server 2005 Express管理工具 249 8.5.3 服务器端数据库与本地数据库 250 8.6 数据库驱动的...

    C#开发经验技巧宝典

    0413 巧用DataBinder.Eval()方法进行数据绑定 230 0414 如何将DropDownList控件绑定到GridView控件中 231 10.4 开发Web页的常用功能 231 0415 使用QueryString变量在页面之间传值 231 0416 页面定时刷新...

    ASP.NET.4揭秘

    8.4.3 使用双向数据绑定表达式278 8.5 sql server 2008 express概述280 8.5.1 sql server express 特性280 8.5.2 sql server 2008 express管理工具281 8.5.3 服务器端数据库与本地数据库282 8.6 数据库驱动的web应用...

    ASP.NET 2.0+SQL Server 2005全程指南-源代码

    8.2.2 复杂数据绑定 8.2.3 Eval0方法和Bind()方法绑定数据 8.3 本章小结 第9章 GridView及其他数据控件的应用 9.1 GridView控件的应用 9.1.1 GridView控件的概述 9.1.2 使用GridView控件的绑定列绑定数据 ...

    asp.net专家疑难解答200问源码

    138.如何使用DataBinder.Eval()方法进行数据绑定 139.如何将ArrayList绑定到ListBox Web控件 140.如何将Hashtable绑定到RadioButtonList Web控件 141.如何将XML作为数据源绑定到控件 第8章 数据库设计 143.ASP...

    asp.net学习积累的代码段

    数据绑定 数据库方面 文件操作 验证码 ASP.NET 2.0高级控件之FileUpload控件.txt ASP.NET 程序中常用的三十三种代码.txt asp.net使用客户端验证.txt Asp.net中基于Forms验证的角色验证授权).txt asp.net中如何用c#...

    asp.net专家疑难解答200问

    如何实现DataGrid控件中DropDownList控件的联动 131.DataGrid控件使用综合举例 第7章 数据绑定技术 132.如何单值绑定到控件的属性 133.如何将DataTable绑定到DataGrid Web控件 134.如何将...

    net实用类50个常用方法升级版分页

    ///DataBindRadioButtonList()RadioButtonList控件绑定 默认第一个选中 ///DataBindCheckBoxList()CheckBoxList控件绑定 ///ElseIpAddr()调用此方法 返回当前登录的省市IP地址 ///ElseDataTimeIng()返回本地...

    net实用类50超级实用方法赠分页

    ///DataBindRadioButtonList()RadioButtonList控件绑定 默认第一个选中 ///DataBindCheckBoxList()CheckBoxList控件绑定 ///ElseIpAddr()调用此方法 返回当前登录的省市IP地址 ///ElseDataTimeIng()返回本地...

    net实用类50超级实用方法赠分页分页控件强大的分页

    ///DataBindRadioButtonList()RadioButtonList控件绑定 默认第一个选中 ///DataBindCheckBoxList()CheckBoxList控件绑定 ///ElseIpAddr()调用此方法 返回当前登录的省市IP地址 ///ElseDataTimeIng()返回本地...

    .net50个常用方法简单华丽的分页控件功能大的分页控件 50个实用方法

    ///DataBindRadioButtonList()RadioButtonList控件绑定 默认第一个选中 ///DataBindCheckBoxList()CheckBoxList控件绑定 ///ElseIpAddr()调用此方法 返回当前登录的省市IP地址 ///ElseDataTimeIng()返回...

    ASP.NET3.5从入门到精通

    8.6 数据绑定控件(DetailsView) 14 第一篇 窗口与界面编程 8.7 数据绑定控件(ListView) 8.8 数据绑定控件(DataPager) 8.9 小结 第 9 章 ASP.NET 操作数据库 9.1 使用ADO.NET 操作数据库 9.1.1 使用...

    ASP.NET 3.5 开发大全11-15

    8.6 数据绑定控件(DetailsView) 8.7 数据绑定控件(ListView) 8.8 数据绑定控件(DataPager) 8.9 小结 第9章 ASP.NET操作数据库 9.1 使用ADO.NET操作数据库 9.1.1 使用ExecuteReader()操作数据库 9.1.2 使用...

    ASP.NET 3.5 开发大全

    8.6 数据绑定控件(DetailsView) 8.7 数据绑定控件(ListView) 8.8 数据绑定控件(DataPager) 8.9 小结 第9章 ASP.NET操作数据库 9.1 使用ADO.NET操作数据库 9.1.1 使用ExecuteReader()操作数据库 9.1.2 使用...

Global site tag (gtag.js) - Google Analytics