ドロップダウンリストとボタンの外側にgridview。gridviewに表示されるデータを制御するために使用されます。また、グリッドビューに「編集」があります。グリッドビューの「編集」をクリックした後、ドロップダウンリストとグリッドビューのデータの値を保持するにはどうすればよいですか?
<asp:DropDownList ID="ddl" runat="server">
<asp:ListItem>All</asp:ListItem>
<asp:ListItem>Yes/asp:ListItem>
<asp:ListItem>No</asp:ListItem>
</asp:DropDownList>
<asp:Button ID="btn" runat="server" Text="Search" onclick="btnOnClick" />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
OnRowEditing="gvUpdateMsg_Rowediting" OnRowUpdating="gvUpdateMsg_Rowupdating"
OnRowCancelingEdit="gvUpdateMsg_Cancelingedit">
<Columns>
<asp:TemplateField ShowHeader="False">
<EditItemTemplate>
<asp:LinkButton ID="btnUpdate" runat="server" CausesValidation="True" CommandName="Update"
Text="Confirm"></asp:LinkButton>
<asp:LinkButton ID="btnCancel" runat="server" CausesValidation="False" CommandName="Cancel"
Text="Cancel"></asp:LinkButton>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="btnEdit" runat="server" CausesValidation="False" CommandName="Edit"
Text="Reply"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
........
</ItemTemplate>
</asp:TemplateField>
.......
</Columns>
</asp:GridView>
回答:
回答№1は0次のように「OnClick」イベントをbtnEditボタンに追加します。
<asp:LinkButton ID="btnEdit" runat="server" CausesValidation="False"
CommandName="Edit" Text="Reply" OnClick="btnEdit_Click"></asp:LinkButton>
コードの背後にある:
protected void btnEdit_Click(object sender, EventArgs e)
{
GridViewRow clickedRow = ((LinkButton)sender).NamingContainer as GridViewRow;
LinkButton btnEdit = (LinkButton)clickedRow.FindControl("btnEdit");
string any_data_for_gridview = clickedRow.Cells[1].Text; //change number 1
string any_data_for_ddl = ddl.SelectedValue.ToString();
}