从asp.net中的gridview模板字段读取值

时间:2015-04-12 16:54:38

标签: c# asp.net aspxgridview

这是gridview中的模板字段代码。我想使用c#代码在字符串中获取此字段的值。

<asp:TemplateField HeaderText="Status" SortExpression="Status">
                            <EditItemTemplate>
                                <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Status") %>'></asp:TextBox>
                            </EditItemTemplate>
                            <ItemTemplate>
                                <asp:DropDownList ID="DropDownList2" runat="server">
                                    <asp:ListItem Value="P"></asp:ListItem>
                                    <asp:ListItem Value="L"></asp:ListItem>
                                    <asp:ListItem Value="A"></asp:ListItem>
                                </asp:DropDownList>
                            </ItemTemplate>
                        </asp:TemplateField>

我尝试了以下代码,但它不起作用。 这是我的阅读价值代码。

 string str = gridview1.Rows[0].Cells[0].Text.ToString();

但它返回空字符串。我怎样才能获得选定的价值。

1 个答案:

答案 0 :(得分:0)

您无法找到此下拉列表选定值。您需要首先使用FindControl方法找到控件: -

DropDownList DropDownList2 =  (DropDownList)gridview1.Rows[0].Cells[0]
                                                     .FindControl("DropDownList2");
string str = DropDownList2.SelectedValue;