Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 数据绑定后中继器未更新_C#_Asp.net_.net_Data Binding - Fatal编程技术网

C# 数据绑定后中继器未更新

C# 数据绑定后中继器未更新,c#,asp.net,.net,data-binding,C#,Asp.net,.net,Data Binding,我有一个页面,上面有一个转发器。在按钮(btnExport)上单击我将数据导出到Excel,因此我在UpdatePanel中添加了一个设置PostBackTrigger 我有方法(BindData)可以数据绑定一个中继器。所以我的问题是,当我在按钮点击(btnExport\u点击)中添加BindData方法时,中继器没有刷新(PS:Dataset返回更新的新值,DataBind()方法工作,但中继器没有刷新)。这是我的第一篇文章,如果问题不完全清楚,很抱歉。提前谢谢 <asp:Repeat

我有一个页面,上面有一个转发器。在
按钮(btnExport)
上单击我将数据导出到Excel,因此我在
UpdatePanel
中添加了一个设置
PostBackTrigger

我有
方法(BindData)
可以
数据绑定
一个中继器。所以我的问题是,当我在
按钮点击(btnExport\u点击)
中添加
BindData
方法时,中继器没有刷新(PS:
Dataset
返回更新的新值,
DataBind()
方法工作,但中继器没有刷新)。这是我的第一篇文章,如果问题不完全清楚,很抱歉。提前谢谢

<asp:Repeater ID="rptGoods" runat="server">
    <ItemTemplate>
        <asp:Literal ID="litGoodCode" runat="server" Text='<%# 
        Eval("GOODS_CODE") %>' />
        <asp:Literal ID="litGoodName" runat="server" Text='<%# 
       Eval("GOODS_CNAME") %>' />
    </ItemTemplate>
</asp:Repeater>
<asp:Button ID="btnExport" runat="server" Text="Export" OnClick="btnExport_click" />

<asp:UpdatePanel ID="Upd_Export" runat="server" >
    <ContentTemplate>
    </ContentTemplate>
    <Triggers>
        <asp:PostBackTrigger ControlID="btnExport" />
    </Triggers>
</asp:UpdatePanel>


protected void btnExport_click(object sender, EventArgs e)
{
    ExportToExcel();
    BindData();
}

private void BindData()
{
    try
    {

        rptGoods.DataSource = /Here I  get Dataset/
        rptGoods.DataBind();                 
    }
    catch (Exception ex)
    {
        ExceptionHelper exsaver = new ExceptionHelper();
        exsaver.SaveException(ex);
    }
}

受保护的无效btnExport\u单击(对象发送方,事件参数e)
{
ExportToExcel();
BindData();
}
私有void BindData()
{
尝试
{
rptcoods.DataSource=/这里是数据集/
rptcoods.DataBind();
}
捕获(例外情况除外)
{
ExceptionHelper exsaver=新的ExceptionHelper();
exsaver.SaveException(ex);
}
}

由于中继器位于UpdatePanel之外,因此在异步回发后不会刷新它。只刷新UpdatePanel的内容


将中继器移动到UpdatePanel内或用另一个UpdatePanel将其包裹

中继器是否位于UpdatePanel之外?请参阅本文:您无法导出文件并更新UI。是这样或那样。谢谢你的回复。我认为PostBackTrigger的问题不,问题正是VDWWD所说的。你可以做一个或另一个,而不是两个都在同一个响应中。如果你想让用户下载一个文件,打开一个单独的选项卡/窗口来下载。你说得对。导出必须在单独的选项卡上。谢谢大家