在教务系统页面整合到时候用到了DropDownList控件。本身对此控件的使用方法不是很清楚,在 BS CS 开发环境中控件到使用方法也不太一样。

下面我们对DropDownList的到一些使用方法:

开发过程中我大概遇到了这些问题:

一、“DropDownList”的“SelectedIndexChanged”方法不响应的问题。

问题出现的环境:

在系统开发前期,我们已经做好了静态页面。看了看页面中其中到一个DropDownList的列表项,短时间内是不会改变,所以就不用绑定数据库了。

然后就直接双击控件,添加上了“SelectedIndexChanged”方法。(问题就在这里!)

 

出现问题:

我们已经添加了“SelectedIndexChanged”,但是无论怎么调试都不响应此方法。这该这么办?

我就想可能其中显示的内容虽然是改变了,可能他已经记录下了这些内容,系统认为他没有改变(这个是不可能的!)。 于是我尝试先给他绑定了一些数据,结果是必然的。

 

解决方法:

于是对比了一下这两种不同形式的代码:

绑定数据到代码:

 

 
  
  1. DropDownList.DataSourse=DataTable;  
  2.  
  3. DropDownList.DataTextField=”字段名”;  
  4.  
  5. DropDownList.DataValueFied=”字段名”;  
  6.  
  7. DropDownList.DataBind();  
  8.  
  9. DropDownList.AutoPostBack=true;  
  10.  

不绑定数据的 DropDownList 控件当然就没有代码了。我看了一下,这里就是“AutoPostBack”属性。那么这个属性是什么意思啊?

这个属性是当前“DropDownList”控件选择属性改变后,将选择的值返回给服务器。

哦,原来是它,终于找到了。因为控件只是双击控件添加了“SelectedIndexChanged”方法。没有设置“AutoPostBack”属性,所以此控件就没有把选择的值没有返回回来。所以就不可能响应“SelectedIndexChanged”方法。

 

这个问题就算解决了!

 

  我们再来说一个“DropDownList”的使用方法,此控件有两种获得其选中到值。

 

  第一种:

         1)如果是绑定了DataValueFied方法绑定了值。那就可以用DropDownList.SelectValue获得选中值。

         2)可以是在页面代码中直接写入

 

   同样使用SelectiveValue获得!

第二种:

         我们可以直接使用“Text”属性获取选中值了!