【问题标题】:DropDownList in GridView to select to a GridView BoundFieldGridView 中的 DropDownList 以选择到 GridView BoundField
【发布时间】:2011-06-05 02:00:14
【问题描述】:

在 ASP.NET 4 中,我有一个 GridView,它在 asp:TemplateEdit 部分中包含一个 DropDownList。 DropDownList 填充了我需要来自第二个数据源的所有选项。但是,我希望每行中的每个 DropDownList 都根据 GridView 中已有的数据在默认情况下设置不同的 SelectedIndex。

例如,这里是示例数据

|  id  |     Status    |  hidden  |  First Name  |
--------------------------------------------------
|  12  |   <dropdown>  |     3    |  john  doe   |
|  13  |   <dropdown>  |     7    |  jane  ble   |

所以你会注意到第三列是隐藏的,这意味着我将它设置为:

<asp:BoundField DataField="StatusName" HeaderText="Status" Visible="false" />

但是,此列中编辑的行包含我需要 DropDownList 默认显示的值(asp:BoundField)。

换句话说,我需要

<option select="selected">something</option>

根据“隐藏”字段中的数字选择正确的索引。

【问题讨论】:

  • 下拉列表是 ASP DropdownList 还是只是带有静态选项的纯 html 选择列表?
  • 对不起

标签: asp.net gridview drop-down-menu


【解决方案1】:

您可以订阅RowDataBound事件,以便在下拉列表中选择正确的值:

protected void myGrid_RowDataBound(object sender, GridViewRowEventArgs e)
{
    DropDownList lst = null;
    string hiddenStatus = string.Empty;

    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        hiddenStatus = e.Row.Cells[2].Text;
        lst = (DropDownList)e.Row.FindControl("dropDownIdentifier");

        lst.SelectedValue = hiddenStatus;
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-16
    • 1970-01-01
    • 2011-01-06
    • 1970-01-01
    • 2017-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多