【发布时间】:2013-12-02 13:56:39
【问题描述】:
我想在我的 gridview 中访问我的 O1 控件 这是网格视图
<asp:GridView ID="SelectedPollGridView" runat="server" Width="100%" AutoGenerateColumns="False" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="4" DataKeyNames="PollID" DataSourceID="SelectedPollSqlDataSource" ForeColor="Black" GridLines="Horizontal">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<p class="text-center"><small><%#Eval("Header") %></small></p>
</HeaderTemplate>
<ItemTemplate>
<p class="text-right"><%#Eval("Body") %></p>
<div class="text-right">
<div runat="server" id="O1Div" visible='<%#Eval("O1Vis") %>' class="radio ">
<label>
<input class="pull-right" type="radio" name="optionsRadios" id="O1" value="option1">
<%#Eval("O1") %>
</label>
</div>
<div runat="server" id="O2Div" visible='<%#Eval("O2Vis") %>' class="radio">
<label>
<input class="pull-right" type="radio" name="optionsRadios" id="O2" value="option2">
<%#Eval("O2") %>
</label>
</div>
<div runat="server" id="O3Div" visible='<%#Eval("O3Vis") %>' class="radio">
<label>
<input class="pull-right" type="radio" name="optionsRadios" id="O3" value="option3">
<%#Eval("O3") %>
</label>
</div>
<div runat="server" id="O4Div" visible='<%#Eval("O4Vis") %>' class="radio">
<label>
<input class="pull-right" type="radio" name="optionsRadios" id="O4" value="option4">
<%#Eval("O4") %>
</label>
</div>
<asp:Button CssClass="btn btn-info" ID="SubmitPollButton" runat="server" Text="ثبت نظر" OnClick="SubmitPollButton_Click" />
</div>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我正在使用此代码访问它:
protected void SubmitPollButton_Click(object sender, EventArgs e)
{
System.Web.UI.HtmlControls.HtmlGenericControl O1Radio = (System.Web.UI.HtmlControls.HtmlGenericControl)SelectedPollGridView.Rows.FindControl("O1");
if (O1Radio.Attributes["checked"] == "checked")
{
Response.Redirect("somewhere");
}
}
但它不起作用。 有谁能够帮我? 在我的gridview 中只有一个模板字段。这是否意味着我只有一行和一个单元格?
非常感谢。
【问题讨论】:
-
你想通过什么方法获得控制权?
-
System.Web.UI.HtmlControls.HtmlGenericControl O1Radio = (System.Web.UI.HtmlControls.HtmlGenericControl)SelectedPollGridView.Rows[0].FindControl("O1");
-
添加
runat="server"标签:<input class="pull-right" runat="server" ... -
是的,但是,这段代码在哪个方法中呢?方法是在事件 submitPollButton_Click?如果是这样,你可以得到发件人。
-
。它在模板字段的最后一行
标签: c# asp.net gridview controls