asp.net控件使用时的问题

  今天在使用控件的时候,出现了点小问题,后来问了前辈,解决了。现在和大家分享下,希望不要出现这样的小错误哦。
就是在拖DropDownList控件的时候,设置了几个基本的下拉选项,想实现的效果就是点击一个项,超链接的显示的文字和相应的链接地址就发生相应的变化。

按照书本上的代码是:

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
if (DropDownList1.Text == "qq") //如果选择qq
{
HyperLink1.Text
= "qq"; //文本为qq
HyperLink1.NavigateUrl = "http://www.qq.com"; //URL 为qq.com
}
else //选择sohu
{
HyperLink1.Text
= "sohu"; //文本为sohu
HyperLink1.NavigateUrl = "http://www.sohu.com"//URLsohu.com
}
}

上述代码使用了DropDownList 控件,当用户选择不同的值时,对HyperLink1 控件进
行操作。当用户选择qq,则为HyperLink1 控件配置连接为http://www.qq.com。
注意:与标签控件相同的是,如果只是为了单纯的实现超链接,同样不推荐使用
HyperLink 控件,因为过多的使用服务器控件同样有可能造成性能问题。

但是原理是肯定对的,就是无法实现预期的效果。
原来忘记设置了相关的属性:AutoPostBack:true(默认是false的,就是不能自动回传值,提交到后台)
设置好该属性就能达到预期的效果了。好神奇哈。。

下面给大家介绍下效果的几个属性:

  1.AutoPostBack(自动回传)属性
在网页的交互中,如果用户提交了表单,或者执行了相应的方法,那么该页面将会发送到服务器上,服务器将执行表单的操作或者执行相应方法后,再呈现给用户,例如按钮、下拉菜单控件等。如果将某个控件的AutoPostBack 属性设置为true 时,则如果该控件的属性被修改,那么同样会使页面自动发回到服务器。
  2.EnableViewState(控件状态)属性ViewState 是ASP.NET 中用来保存Web 控件回传状态的一种机制,它是由ASP.NET 页面框架管理的一个隐藏字段。在回传发生时,ViewState 数据同样将回传到服务器,ASP.NET框架解析ViewState 字符串并为页面中的各个控件填充该属性。而填充后,控件通过使用ViewState 将数据重新恢复到以前的状态。
  在使用某些特殊的控件时,如数据库控件,来显示数据库。每次打开页面执行一次数据库往返过程是非常不明智的。开发人员可以绑定数据,在加载页面时仅对页面设置一次,在后续的回传中,控件将自动从ViewState 中重新填充,减少了数据库的往返次数,从而不使用过多的服务器资源。在默认情况下,EnableViewState 的属性值通常为true。
  3.其他属性
上面的两个属性是比较重要的属性,其他的属性也经常使用。
 (1).MaxLength:在注册时可以限制用户输入的字符串长度。
 (2).ReadOnly:如果将此属性设置为true,那么文本框内的值是无法被修改的。
 (3).TextMode:此属性可以设置文本框的模式,例如单行、多行和密码形式。默认情况下,不设置TextMode 属性,那么文本框默认为单行。

                                                              鸣谢:Ya飞

posted @ 2011-08-03 22:09  然嗄  阅读(659)  评论(1编辑  收藏  举报