3

我正在使用 C# ASP.net,并且相对较新,需要在下面完成。

在我的 VS2010 Web 应用程序项目中,我有webform一个Gridview从表中获取数据的。

在网格中,我有Commandfiled按钮(column1)和带有Dropdownlist(column2)的项目模板。

用例是,用户首先listitem从 3 个列表项(H、L 和 M)中选择一个,然后选择命令按钮。

我无法弄清楚如何listitem从选定的行中提取所选内容

protected void GridView2_SelectedIndexChanged(object sender, EventArgs e)
{

    GridViewRow row = GridView2.SelectedRow;
    Label4.Text = "You selected " + row.Cells[4].Text + "."; 
    Label5.Text = "You selected this list item from dropdownlist " + ???? ; 
}

提前致谢。

4

1 回答 1

2

GridViewRow对象提供方法FindControl(与所有容器控件一样)以通过其 id 访问行中的控件。例如,如果您DropDownList的 id 为MyDropDown,则可以使用以下命令访问其选定值:

GridViewRow row = GridView2.SelectedRow;
DropDownList MyDropDown = row.FindControl("MyDropDown") as DropDownList;
string theValue = MyDropDown.SelectedValue;
// now do something with theValue

这是访问GridView. 您希望尽可能避免做类似的事情row.Cells[#],因为当您从 GridView 重新排列或添加/删除列时,它很容易中断。

于 2012-04-20T02:15:29.007 回答