Проблема печати ASP.NET UpdatePanelAnimationExtender - PullRequest
1 голос
/ 29 сентября 2010

У меня проблемы с печатью в ASP.NET при использовании UpdatePanel и UpdatePanelAnimationExtender.Я фильтрую содержимое в Repeater, который находится внутри UpdatePanel с прикрепленным UpdatePanelAnimationExtender, чтобы добавить эффект затухания.Когда страница загружается впервые, содержимое репитера может быть напечатано.После обновления UpdatePanel предварительный просмотр показывает, что содержимое Repeater будет пустым.Кто-нибудь знает, почему это происходит?Кто-нибудь нашел решение?

EDIT

Я забыл упомянуть, это проблема только в IE, а не в FF или Chrome

Вот базовая тестовая страница I 'я собрал вместе, что дает пример проблемы (для простоты публикации я только что выкинул весь код в разметке):

    <%@ Page Language="vb" AutoEventWireup="false" CodeBehind="Default.aspx.vb" Inherits="TestUpdatePanelPrint._Default" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajax" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    Dim myList As New List(Of Integer)

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        myList.Add(1)
        myList.Add(2)
        myList.Add(3)
        myList.Add(4)

        Filter(-1)
    End Sub

    Protected Sub Filter(ByVal number As Integer)
        Dim filtered As List(Of Integer) = myList

        If (number > 0) Then
            filtered = myList.Where(Function(x) x = number).ToList()
        End If

        repeater.DataSource = filtered
        repeater.DataBind()
    End Sub

    Private Sub button_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles button.Click
        Filter(CInt(list.SelectedValue))
    End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title></title>
</head>
<body>

    <form id="form1" runat="server">
    <asp:ScriptManager ID="script" runat="server"></asp:ScriptManager>
    <div>
        <asp:ListBox ID="list" runat="server">
            <asp:ListItem Text="-1" Value="-1" />
            <asp:ListItem Text="1" Value="1" />
            <asp:ListItem Text="2" Value="2" />
            <asp:ListItem Text="3" Value="3" />
        </asp:ListBox>

        <asp:Button ID="button" text="Filter" runat="server" />

        <br />

        <ajax:UpdatePanelAnimationExtender id="upExSearch" runat="server"
            TargetControlID="UpdatePanel1">
            <Animations>
                <OnUpdated>
                    <FadeIn duration=".25" Fps="30" />
                </OnUpdated>
            </Animations>
        </ajax:UpdatePanelAnimationExtender>

        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="button" EventName="Click" />
            </Triggers>
            <ContentTemplate>
                <ul>
                    <asp:Repeater ID="repeater" runat="server">
                        <ItemTemplate>
                            <li><%# Container.DataItem %></li>
                        </ItemTemplate>
                    </asp:Repeater>
                </ul>
            </ContentTemplate>
        </asp:UpdatePanel>
    </div>
    </form>
</body>
</html>
...