我认为这会相对简单,但我的 Site.Master 页面上有一个简单的按钮,我想用它从网格中获取单元格信息,然后将其发布到文本框。然而,它似乎没有被解雇(没有达到断点)。我已经尝试清理解决方案并禁用 CausesValidation。Button1_Click 函数也出现在按钮事件属性中的 Click 下拉菜单下。
这是我表单的主要部分:
<div id="logindisplay">
<% Html.RenderPartial("LogOnUserControl"); %>
</div>
<div id="menucontainer">
<ul id="menu">
<li><%= Html.ActionLink("Home", "Index", "Home")%></li>
<li><%= Html.ActionLink("About", "About", "Home")%></li>
</ul>
</div>
<asp:GridView ID="GridView1" runat="server" AllowSorting="True" AutoGenerateColumns="False" DataKeyNames="Id" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="Id" HeaderText="Id" InsertVisible="False" ReadOnly="True" SortExpression="Id" />
<asp:BoundField DataField="Title" HeaderText="Title" SortExpression="Title" />
<asp:BoundField DataField="Director" HeaderText="Director" SortExpression="Director" />
<asp:BoundField DataField="DateReleased" HeaderText="DateReleased" SortExpression="DateReleased" />
<asp:TemplateField HeaderText="Select">
<ItemTemplate>
<asp:CheckBox ID="CheckBox" runat="server" OnCheckedChanged="CheckBox1_CheckedChanged" CausesValidation="True" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT * FROM [Movies]"></asp:SqlDataSource>
<asp:Button ID="Button1" runat="server" Text="Select Movies" OnClick="Button1_Click" OnClientClick="Button1_Click" CausesValidation="False" />
<asp:TextBox ID="TextBox1" Text="First Name" runat="server"></asp:TextBox>
</form>
这是我的小 Master.Site.cs:
namespace MovieApp
{
public partial class Site : System.Web.Mvc.ViewMasterPage
{
private System.Collections.Generic.LinkedList<GridViewRow> Selections;
protected void Page_Load(object sender, EventArgs e)
{
int i;
TextBox box = (form1.FindControl("TextBox1")) as TextBox;
box.Text = "!!!";
}
protected void Button1_Click(object sender, EventArgs e)
{
int i = 0;
GridView gView = (GridView)(form1.FindControl("GridView1"));
GridViewRow row = gView.Rows[0];
TextBox box = (form1.FindControl("TextBox1")) as TextBox;
box.Text= row.Cells[0].Text;
}
}
}