平时我们用DropDownList控件(如:下拉菜单时)显示栏目名称等时,一般可以用两种方法使其显示我们要的内容:
方法一:
//ddlFirstType即为DropDownList控件,下同
ddlFirstType.DataSource = ds.Tables[0].DefaultView;
方法一:
//ddlFirstType即为DropDownList控件,下同
ddlFirstType.DataSource = ds.Tables[0].DefaultView;
//这里绑定的是在下拉菜单中显示出来的文字,比如"我的文章"
ddlFirstType.DataTextField = "CnName";
//这里绑定的内容在下拉菜单中是看不到的,这里指的是"我的文章"这个栏目在数据库中对应的ID
ddlFirstType.DataValueField = "ID";
ddlFirstType.DataBind();
此时,ddlFirstType.SelectedValue得到的是ID这个字段的内容,比如你选中的是"我的文章"这个栏目,那么此时 SelectedValue得到的是"我的文章"在数据库中对应的ID.要得到下拉菜单中选中的值,如"我的文章",需要用:
ddlFirstType.SelectedItem.Text.
方法二:
for(int i=0;i<ds.Tables[0].Rows.Count;i++)
{
ddlSecondType.Items.Add(ds.Tables[0].Rows[i]["CnName"].ToString());
}
此时, ddlFirstType.SelectedValue得到的是CnName这个字段的内容,比如你选中的是"我的文章"这个栏目,那么此时SelectedValue得到就是"我的文章"这几个字,而ID的内容就得不到.
for(int i=0;i<ds.Tables[0].Rows.Count;i++)
{
ddlSecondType.Items.Add(ds.Tables[0].Rows[i]["CnName"].ToString());
}
此时, ddlFirstType.SelectedValue得到的是CnName这个字段的内容,比如你选中的是"我的文章"这个栏目,那么此时SelectedValue得到就是"我的文章"这几个字,而ID的内容就得不到.