C# 如何从弹出窗口设置父GridView控件的值?
我有一个GridView,它有一个控件。比如说一个C# 如何从弹出窗口设置父GridView控件的值?,c#,javascript,asp.net,gridview,C#,Javascript,Asp.net,Gridview,我有一个GridView,它有一个控件。比如说一个LinkButton,当我点击这个LinkButton(属于弹出式GridView)时,我打开了一个弹出窗口,它也有一个GridView和一个带有LinkButton的列。。弹出窗口关闭,名称或文本值被传递到父页面。。我有这么多工作要做。不,我想将我从PopUp GridView中检索到的这个值设置为父页面的GridViewLinkButton,它最初称为弹出窗口 父页面 <asp:GridView ID="GridView1" runa
LinkButton
,当我点击这个LinkButton
(属于弹出式GridView)时,我打开了一个弹出窗口,它也有一个GridView和一个带有LinkButton
的列。。弹出窗口关闭,名称或文本值被传递到父页面。。我有这么多工作要做。不,我想将我从PopUp GridView中检索到的这个值设置为父页面的GridViewLinkButton
,它最初称为弹出窗口
父页面
<asp:GridView ID="GridView1" runat="server">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" onclick="LinkButton1_Click">click</asp:LinkButton>
<br />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<script type="text/javascript">
function FillTextFromPopup(text) {
alert(text);
}
</script>
<asp:GridView ID="GridView1" runat="server">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" onclick="LinkButton1_Click1"
Text='<%# Eval("name") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
有两种方法可以更改父页面网格上的某些值
事件编程会更好。答案是[这里][1][1]:
<asp:GridView ID="GridView1" runat="server">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" onclick="LinkButton1_Click1"
Text='<%# Eval("name") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
protected void Page_Load(object sender, EventArgs e)
{
DataTable table = new DataTable();
table.Columns.Add("a", typeof(int));
table.Columns.Add("b", typeof(string));
table.Columns.Add("c", typeof(string));
table.Columns.Add("d", typeof(DateTime));
table.Columns.Add("name", typeof(string));
table.Rows.Add(1, "Indocin1", "David1", DateTime.Now,"arbaaz");
table.Rows.Add(2, "Enebrel1", "Sam1", DateTime.Now,"Ravish");
table.Rows.Add(3, "Hydralazine1", "Christoff1", DateTime.Now,"Gulzar");
table.Rows.Add(4, "Combivent1", "Janet1", DateTime.Now,"Anas");
table.Rows.Add(5, "Dilantin1", "Melanie1", DateTime.Now,"Danish");
GridView1.DataSource = table;
GridView1.DataBind();
}
protected void LinkButton1_Click1(object sender, EventArgs e)
{
GridViewRow gvRow = (GridViewRow)(sender as Control).Parent.Parent;
int index = gvRow.RowIndex;
LinkButton lnk = (LinkButton)gvRow.FindControl("LinkButton1");
string myScript=lnk.Text;
string aaa = "javascript:window.opener.FillTextFromPopup('"+myScript+"'); window.close();";
ScriptManager.RegisterStartupScript(this, GetType(), ClientID, aaa, true);
}