无法在页面加载时设置下拉列表

时间:2013-05-18 13:28:34

标签: c# asp.net .net visual-studio-2010

我第一次遇到这种问题

我在数据集的页面加载时设置下拉列表的值     但这是自动设置0指数..... 我的代码:

ddlEbitda.SelectedValue = objDataset.Tables[0].Rows[0]["acq_ebitda"].ToString();

我立即检查了窗户......

objDataset.Tables[0].Rows[0]["acq_ebitda"].ToString();

“40-60%之间”(来自数据集的值是正确的)

ddlEbitda.SelectedValue
"Up to 10 Million Dollar "           ( this is default value setting )

我尝试了很多不同的代码来解决这个问题:

    ddlEbitda.ClearSelection();
    string Ebitda = objDataset.Tables[0].Rows[0]["acq_ebitda"].ToString();
    ddlEbitda.Items.FindByValue(Ebitda).Selected = true;


    string Ebitda = objDataset.Tables[0].Rows[0]["acq_ebitda"].ToString();
    ddlEbitda.SelectedIndex = ddlEbitda.Items.IndexOf(ddlEbitda.Items.FindByValue(Ebitda));

但仍然无法解决这个问题....事实是我无法理解什么是问题.....

3 个答案:

答案 0 :(得分:0)

这应该有效

string value=objDataset.Tables[0].Rows[0]["acq_ebitda"].ToString();
ddlEbitda.Items.FindByValue(value).Selected = true;

但请确保在使用DataSource绑定下拉列表时,acq_ebitda应为DataValueField

如果是DataTextField那么你应该尝试这样的事情

ddlEbitda.Items.FindByText(value).Selected = true;

答案 1 :(得分:0)

确保在Page_Load方法中的此代码块中填充/绑定DropDownList

    If (!IsPostBack)
    {
    }

并在设置所选项目后立即。

    ddlEbitda.SelectedValue

答案 2 :(得分:0)

确保您的下拉列表是否正确绑定到数据集并填充数据。特别要确保您分配的值在项目列表中。您可以在VS中快速查看,以便确保您分配的值在下拉项目中。因为你的方式是好的