如何将下拉框的当前显示内容定为数据中查到的对应的项(紧急,在线等,拜托大家了)

jeryhuiq 2006-04-13 07:21:10
我是在修改页面内容的时候,先要Page_Load,从数据库查到一行值,下拉框里的当前显示内容是对应的查到的内容!
...全文
301 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
//从数据库里读出学生性别,然后显示在下拉列表里
string filed;
filed="student_sex";
//优化后的程序,(嘿嘿,上一次只关心怎么实现了.没关心性能.嘿嘿,小优化一下)

int i;
sex.SelectedIndex=-1;
string temp=Mydbfunc.ReturnSqlValue(sqlstring,filed);

for(i=0;i<=sex.Items.Count;i++)
{
sex.SelectedIndex=i;
if(sex.SelectedItem.Text==temp)//<----小函数,上面有
{
break;
}
}
jeryhuiq 2006-04-15
  • 打赏
  • 举报
回复
问题解决了,才有空上来管理下,上次那个哥哥给的代码,要把return改成break;哦!
itmingong 2006-04-14
  • 打赏
  • 举报
回复
mark
  • 打赏
  • 举报
回复
嘿嘿,给分啊。直接点帖子上面的"管理",在橘黄区域里添上分,在上面输入你的密码.点"给分"就结贴了.嘿嘿.接ing
Dleno 2006-04-14
  • 打赏
  • 举报
回复
//部门
string depid=dt.Rows[0]["UDepID"].ToString();
try
{
UDepID.Items.FindByValue(depid).Selected=true;
}
catch
{
}
=========
UDepID.Items.FindByValue(depid).Selected=true;
UDepID.Items.FindByText(depid).Selected=true;
这两个都可以的!
你先绑定数据到下拉菜单

UDepID.Items.FindByValue(depid).Selected=true;
UDepID.Items.FindByText(depid).Selected=true;



backham2000 2006-04-14
  • 打赏
  • 举报
回复
这是个美美吗?真得很可爱,呵呵,看到她,想起了上学时师妹的样子
one_stone 2006-04-14
  • 打赏
  • 举报
回复
首先要对数据库查询出的数据作一次过滤,保存到临时的datatable中或者是dataset中,然后再对ddl控件进行数据绑定,这个过滤可以写成函数的形式
blueskyone 2006-04-14
  • 打赏
  • 举报
回复
抢分中~~~飘过~~
webwait 2006-04-14
  • 打赏
  • 举报
回复
都回答完了
jacky125 2006-04-14
  • 打赏
  • 举报
回复
Dim ma As String = Format(DateTime.Now, "yyyy")
DList1.Items.FindByValue(ma).Selected = True
Dim aa As String = Format(DateTime.Now, "MM")
DList2.Items.FindByValue(aa).Selected = True
open100 2006-04-14
  • 打赏
  • 举报
回复
真的很才鸟÷
skywdq 2006-04-13
  • 打赏
  • 举报
回复
哎,这么简单也问呀
看下msdn上面有答案
jeryhuiq 2006-04-13
  • 打赏
  • 举报
回复
第一次提问,怎么给分啊,呵呵,谢谢楼上了!^_^
jeryhuiq 2006-04-13
  • 打赏
  • 举报
回复
恩恩,我就是这个意思!可是我调了下,性别倒没问题可以显示了,其它籍贯什么的还是。。。。唉,郁闷,继续k
  • 打赏
  • 举报
回复
这样,在sex下拉列表里先添上"男,女"两个项,然后就可以了
  • 打赏
  • 举报
回复
////////////////////////////////////////////////////////////////////////
//名称  : string ReturnSqlValue(string sqlstring ,string filed)
//功能 : 连接数据库并执行传递过来的sql语句,返回指定字段的数据值(以字符串传回)

//传入类型: string string
//传入参数: sql查询语句,指定的返回字段

//返回类型; string
//返回值 : 返回查询出来的对应filed的值
////////////////////////////////////////////////////////////////////////
public string ReturnSqlValue(string sqlstring ,string filed)
{
OleDbConnection MyConnection= null;
OleDbCommand MyCommand=null;
OleDbDataReader MyDatareader=null;
try
{
MyConnection=new OleDbConnection(GetConnectionString());
MyCommand=new OleDbCommand(sqlstring,MyConnection);
MyConnection.Open();
MyDatareader=MyCommand.ExecuteReader();
if (MyDatareader.Read())
{
return (string)MyDatareader[filed];
}
else
{
return null;
}
}
catch
{
return null;
}
finally
{
if (MyConnection!=null)
{
MyConnection.Close();
MyConnection.Dispose();
}
if(MyCommand!=null)
{
MyCommand.Dispose();
}
if(MyDatareader!=null)
{
MyDatareader.Close() ;
}
}

}



//楼主需要的也许是上面我发的那个方法把.
  • 打赏
  • 举报
回复
//从数据库里读出学生性别,然后显示在下拉列表里
string filed;
filed="student_sex";
int i;
sex.SelectedIndex=-1;
for(i=0;i<=sex.Items.Count;i++)
{
sex.SelectedIndex=i;
if(sex.SelectedItem.Text==Mydbfunc.ReturnSqlValue(sqlstring,filed))//<----小函数,马上传上来...
{
sex.SelectedIndex=i;
return;
}
}
jeryhuiq 2006-04-13
  • 打赏
  • 举报
回复
你说的是不是在下拉框里添加一个新项?
那不是有两个重复的项?
不太会。。

jouje 2006-04-13
  • 打赏
  • 举报
回复
就是修改它的Index值就可以了啊
jouje 2006-04-13
  • 打赏
  • 举报
回复
那不是一样吗?还是先生成一个ListItem,把你提交了的值赋给它,只是将它的Index设为比其他项都小,再把它加到下拉框就可以了撒,还是我上面说的方法啊...然后你提交了的值就可以显示为默认了...
加载更多回复(9)

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧