我有GridView
和Button
控件嵌套在一个Panel
.
<asp:Panel ID="PanelPopUp" runat="server">
<asp:gridview ID="gvSource" runat="server" CellPadding="4" ForeColor="#333333"
GridLines="None">
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<EditRowStyle BackColor="#999999" />
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
</asp:gridview>
<asp:Button ID="OKButton" runat="server" Text="Close" />
</asp:Panel>
我想让这个 GridView 在触发我的 AJAXModalPopUp Extender
控件时显示为 PopUp
<act:ModalPopupExtender ID="ModalPopupExtender1" runat="server" TargetControlID="btnMock" PopupControlID="PanelPopUp" OkControlID="OKButton">
</act:ModalPopupExtender>
此弹出窗口触发到此按钮:
<asp:Button ID="btnMock" runat="server" Text="Process" OnClientClick="document.getElementById('btnProcess').click();"/>
还有另一个按钮:
<asp:Button ID="btnProcess" runat="server" Text="" Style="visibility:hidden;"
onclick="btnProcess_Click" />
此按钮事件处理(在服务器端):
protected void btnProcess_Click(object sender, EventArgs e)
{
//Basically populating data and bind it to GridView
}
我的情况:
- ModalPopUp TargetControl不会触发服务器端事件
- 所以处理( )的事件
TargetControlID
btnMock
是没有意义的,因为它永远不会被执行 btnProcess
所以我创建了另一个处理事件的按钮- 该事件实际上正在执行数据绑定到
gvSource
- 是模态扩展器的
btnMock
目标控件,也触发执行btnProcess
- 但是它不能按照我想要的顺序工作。所以
btnMock
将首先显示弹出窗口,然后只有 *有btnProcess
点击*ed。
我的问题:
在模态弹出控制器执行期间是否无法执行数据绑定?我尝试使用隐藏按钮的这个解决方法目前没有按正确的顺序工作。有人可以就此提出建议吗?