首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

dropdownlist控件的有关问题,在线急等

2012-01-12 
dropdownlist控件的问题,在线急等在gridview里显示学生信息,在gridview里添加了一个超链接按钮 修改 ,点

dropdownlist控件的问题,在线急等
在gridview里显示学生信息,在gridview里添加了一个超链接按钮 "修改 ",点击修改就会跳转到修改页面进行修改,在修改页面有dropdownlist控件,已经在修改页面的page_load事件里连接上数据库里面的班级表了,当在gridview点击修改链接时就会在dropdownlist控里面显示相应的班级,其他项会在文本框控件中显示,向各位请教如何在dropdownlist控件里面显示相应班级;之前都没能解决

这是在修改页面连接班级的代码  
  Dim   sql   As   String
                Dim   conn   As   New   SqlConnection
                conn.ConnectionString   =   "data   source=192.168.31.199;initial   catalog=kaoqin   manager;user   id=james5;password=james5; "
                sql   =   "select   classno,classname   from   class "
                Dim   cmd   As   New   SqlCommand(sql,   conn)
                conn.Open()
                Dim   dr   As   SqlDataReader
                dr   =   cmd.ExecuteReader()
                banji.AppendDataBoundItems   =   True
                banji.Items.Add(New   ListItem( "--请选择-- ",   "-1 "))
                banji.DataSource   =   dr
                banji.DataValueField   =   "classno "
                banji.DataTextField   =   "classname "
                banji.DataBind()
这是传递参数的代码
Protected   Sub   Page_Load(ByVal   sender   As   Object,   ByVal   e   As   System.EventArgs)   Handles   Me.Load
                If   Page.IsPostBack   =   False   Then
                        Dim   conn   As   New   SqlConnection
                        conn.ConnectionString   =   "data   source=192.168.31.199;initial   catalog=kaoqin   manager;user   id=james5;password=james5; "
                        Dim   sql   As   String
                        sql   =   "select   kaoqinno,riqi,hour,remark   ,stuname   ,mattername,classname     from   "
                        sql   &=   "kaoqin,class,matter   where   kaoqin.classno=class.classno   and     kaoqin.matterno=matter.matterno "
                        sql   &=   "   and     kaoqinno= "   &   Request.QueryString( "kaoqinno ")
                        Dim   cmd   As   New   SqlCommand(sql,   conn)
                        conn.Open()
                        Dim   dr   As   SqlDataReader   =   cmd.ExecuteReader


                        If   dr.Read   Then
                                xingming.Value   =   dr.Item( "stuname ").ToString
                                riqi.Value   =   dr.Item( "riqi ").ToString
                                keshi.Value   =   dr.Item( "hour ").ToString
                                beizhu.Value   =   dr.Item( "remark ").ToString
                                Label3.Text   =   dr.Item( "kaoqinno ").ToString
                                banji.Items.FindByText( "classname ").Selected   =   True     '这句不行
                                                     
                                conn.Close()
                        End   If
                        Call   banji()
                        End   If

        End   Sub
banji()就是上面绑定班级的代码


[解决办法]
首先,在你点修改按钮的时候传递一个参数班级的ID或者班级名称到修改页面
然后,在修改页面绑定完 DropDownList 之后,然后将 DropDownList 的选中项设定为你传过来的参数就可以了
最后,如果问题解决记得给分,嘿嘿
[解决办法]
绑定 DropDownList 原来的数据,然后banji.SelectValue = dr.Item( "字段 ").ToString
[解决办法]
if(!Page.IsPostBack)
{
string theClass = "读取的班级名称 ";
//注释部分--------------------------------------
//1.如果你用Session保存数组传递,string[] cls = (string[])session[ "class "]; theClass= cls[i] 这里 i为GridView中班级列的索引;
2.如果你用 全局类 传递GridView一行信息,假设全局类的名为
public class tClass
{
public string myclass;
.......;
......;
}
则theClass = tClass.myclass;
3.如果你用最麻烦一点的根据 Request.QueryString[ "ID "]来重读数据库,就是SqlDataReader dr; theClass = dr[ "数据库表中班级字段名 "].ToString();
//----------------------------------
ListItem LI = (ListItem)DropDownList1.Items.FinByText( "theClass ");
if(LI != null)
{
LI.Selected = true;
}
}
[解决办法]
1。
banji.Items.FindByText( "classname ").Selected = True

》》》

Dim myClassName as string
// myClassName = Request.QueryString( "selectedClassName "); // such as "高一1班 ";

banji.Items.FindByText(myClassName).Selected = True // 使用具体的班级


2。
顺便提一句,按你现在的写法 "--请选择-- "是出不来的


----------------------
@amandag(高歌)

刚好出得来,因为他设置了 banji.AppendDataBoundItems = True

热点排行
Bad Request.