1

我已经在这个网站和其他网站上搜索了一个解决方案,但我无法找到我的确切案例,所以这里......

我有一个面板,通过使用模态弹出扩展器用作模态弹出窗口。此面板内部是一个包含多视图控件的更新面板。多视图的视图包含网格。不同的网格用于不同的视图。网格上最左侧的字段是包含链接按钮的模板字段。这应该触发后面的代码以重定向到另一个页面。相反,它似乎重新打开了没有显示数据的弹出窗口。

所以......这是我执行它们时的事件。

我单击网页上的一个按钮,打开包含我的网格的弹出窗口。正确的视图显示包含正确的网格并且我的数据是正确的。我单击应该将我引导至新页面的链接按钮,但我得到了相同的弹出窗口,但网格中没有数据。

我在另一个网页上使用了这个确切的功能,唯一的区别是我不使用多视图。但是,我至少知道更新面板内网格中的链接按钮会触发后面的代码。

我试过一个图像按钮,它的反应是一样的。超链接字段确实有效并且可以使用,但我想看看我是否可以让链接按钮工作,以便我有更多的灵活性。

4

2 回答 2

0

舔我的链接按钮,它应该将我引导到一个新页面,相反我得到了相同的弹出窗口,网格中没有数据。

我假设您单击模态弹出多视图当前视图中的链接以导航到另一个视图。您可以完全跳过此步骤并改用 ASP.NET AJAX 工具包的选项卡控件。您可以将每个 gridview 放在单独的选项卡中并删除链接按钮。

于 2012-10-10T09:23:24.043 回答
0

您可以在 LinkBut​​ton 上添加 Click 事件,当您在 RowCreated 中的 Grid 上迭代时添加此事件。

void GridView_RowCreated(Object sender, GridViewRowEventArgs e)
  {
    if(e.Row.RowType == DataControlRowType.DataRow)
    {
      LinkButton button= (LinkButton)e.Row.FindControl("IdButton");
      button.Click += YourDelegate; //Adjust here your called delegate
    }
  }

注意:您必须确保每次发布数据时都不会重新绑定 Grid

您可以使用

if( ! IsPostBack)
{
  //Bind your grid
}

你坚持 ViewState

于 2012-10-09T17:18:52.490 回答