winform 与asp.net 下拉列表的区别

  asp.net的下拉列表绑定后还可以添加新项,用add()方法和insert()方法都行,用insert()还可以把你要添加的项添加到指定的地方

winform绑定后就不能修改了

另外还有一点是关于js的

Javascript获取select的选中值和选中文本

var obj = document.getElementById(”select_id”); //selectid

var index = obj.selectedIndex; // 选中索引

var text = obj.options[index].text; // 选中文本

var value = obj.options[index].value; // 选中值

DropDownlIst 在GridView中使用处理空值问题:

 

处理NULL值

Product表中的CategoryID 和 SupplierID列允许为NULL,而编辑模板中的下拉列表却没有NULL这一项。所以目前存在下面两种问题:

1. 用户无法则现在的界面中将某个product非空的category或supplier设置为NULL
2. 如果产品的CategoryID 或 SupplierID为NULL,在点击Edit按钮时程序会抛出异常。这是因为Bind()表达式中CategoryID(或SupplierID)返回NULL值时,SelectedValue无法找到NULL这一列表项因而抛出异常。

为了支持CategoryID 和 SupplierID的NULL值,需要为两个DropDownList增加一个NULL值选项。在《Master/Detail Filtering With a DropDownList》教程中,我们演示了为绑定的DropDownList增加列表项,方法是将DropDownList的AppendDataBoundItems属性设置为true并手动增加一个值为-1的列表项。在ASP.NET的数据绑定逻辑中,空字符串将自动转换为NULL,NULL值也可以转为空字符串。因此,本节教程我们将增加一个值为空字符串的列表项。

先将这两个DropDownList的AppendDataBoundItems属性设置为true。接着,用<asp:ListItem>元素来增加一个NULL列表项,元素标记大致如下:

<asp:DropDownList ID="Categories" runat="server" DataSourceID="CategoriesDataSource" DataTextField="CategoryName" DataValueField="CategoryID" SelectedValue='<%# Bind("CategoryID") %>' AppendDataBoundItems="True">
    <asp:ListItem Value="">(None)</asp:ListItem>
</asp:DropDownList>

我们选择了使用“(None)”作为列表项的文本显示(Text),你也可以空字符串或别的字符。

注意:《Master/Detail Filtering With a DropDownList》教程演示过DropDownList列表项的增加方法――在设计器中点击DropDownList的属性窗口(F4)中的Item属性(将显示ListItem集合编辑器)。这次我们采用直接在元素标记中增加NULL列表项。如果你使用集合编辑器,创建出的元素标记将忽略空字符的Value,如:<asp:ListItem>(None)</asp:ListItem>。看起来并无大碍,可是DropDownList对没有Value的项则使用Text来代替,这样以来选择“None”时,“None”则被赋予CategoryID,系统将产生异常。通过显式设置Value="",选择此项,CategoryID 就被更新为NULL值了。

重复以上步骤设置Supplier的下拉框控件。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/Freeze_Soul/archive/2007/09/07/1775756.aspx

 

 

 

时间: 2024-08-02 08:46:30

winform 与asp.net 下拉列表的区别的相关文章

winform和asp.net的问题?

问题描述 winform和asp.net的问题? 大家好,我用winform做了精品课程后台管理系统,实现了用户的注册.上传.下载课件等内容,并且把用户图像照片和课件的相对地址存入了SQL数据库!前台是用asp.net网站!请问asp.net怎么从数据库里面读取用户图像和课件信息并显示呢?用了本地绝对路径,但是asp.net里面还是不显示呀?高手们帮帮忙,谢谢! 解决方案 楼主 这是C#的一些项目实例代码 你可以参考一下http://download.csdn.net/album/detail/

ASP与JSP的区别和联系

js|区别|js     今天上论坛看了看,有一个网友bluesky提出问题说"ASP与JSP哪个好,他们有什么区别?"论坛帖子请单击这里看:http://www.webjx.com/bbs/topic.php?tid=4766 动态网页技术开发ASP和JSP的比较请看这里:http://www.webjx.com/htmldata/2005-05-29/1117327873.html ASP好像不存在线程安全问题,而JSP是存在线程安全问题.这不是说ASP好,恰恰相反说明ASP不如J

数据绑定控件再ASP.NET1.X和ASP.NET2.0的区别

asp.net|控件|区别|数据 数据绑定在ASP.NET2.0里进一步得到简化,绑定控件的基类来自于BaseDataBoundControl,你可以到http://msdn2.microsoft.com/en-us/library/system.web.ui.webcontrols.basedataboundcontrol_members(VS.80).aspx查看该类如果你查看该类的成员,请注意下面两个属性和方法 virtual object DataSource  { get; set;

异曲同工 WinForm和ASP.NET如何选?

在.NET平台开发中,我们经常使用WinForm进行C/S架构的开发,也用过ASP.NET作为B/S架构开发.那么有些人可能糊涂了,不知道在这两者之间如何做选择了.其实作为将来要在.NET平台上做开发的工作者来说,无论如何都要同时掌握WinForm编程和ASP.NET编程. 当我们开始开发带有用户界面的应用程序时,可以使用WinForm或ASP.NET.两者在开发环境(Visual Studio系列)中都具有完全的设计时支持,并且可以提供丰富的用户界面和高级应用程序功能解决现实业务问题.由于这种

有什么免费的表格控件可推荐针对winform 和asp.net (类似fpSpread控件)

问题描述 winform和asp.net中需要用到一些表格数据处理(如财务表单),网上都是收费还很贵,如fpSpread,有没有针对.net的免费的控件可用.

以前是做 winform 和asp.net 的 现在公司让做 。net mvc 不会怎么办啊??

问题描述 我以前在学校学的是winform和asp.net现在找个公司要我做.netmvc而且算上我只有四个人用会.net都是老程序员以前是做java的看来我还是比较专业的我感觉压力好大啊明年六月份毕业大家给出出主意啊谢谢大家了!!! 解决方案 解决方案二:私底下下功夫看些代码其实mvc没什么难的解决方案三:学得会就学,学不会转行.前者说的是,没有人生来就会什么的.后者说的是,没有人什么都擅长,所以才有360行.解决方案四:愁也没有用,每本好书,抓紧时间学吧,弄清楚原理,多做例子就行解决方案五:

ASP.NET Web应用程序和ASP.NET网站的区别

WebApplication编程模型的优点: ●网站编译速度快,使用了增量编译模式,仅仅只有文件被修改后,这部分才会被增量编译进去. ●生成的程序集        WebSite:生成随机的程序集名,需要通过插件WebDeployment才可以生成单一程序集        WebApplication:可以指定网站项目生成单一程序集,因为是独立的程序集,所以和其他项目一样可以指定应用程序集的名字.版本.输出位置等信息 ●可以将网站拆分成多个项目以方便管理 ●可以从项目中和源代码管理中排除一个文件

ASP+flash下拉列表(显示图片)

asp+|下拉|下拉列表|显示 在上一次我介绍了数据库与flash 连接方式.在这里,这一方面的我就不多说了....还有ASP中的代码.我也略过不说.就只是贴出来...<!--#include file="conn.asp"--> <% dim rsBiClass,outBigClass,outBigClassID sql="select * from bigclass" set rsBigClass=server.CreateObject(&qu

ASP+flash下拉列表(显示图片)

--------------------------------------------------------- <!--#include file="conn.asp"--> <% dim rsBiClass,outBigClass,outBigClassID sql="select * from bigclass" set rsBigClass=server.CreateObject("adodb.recordset")