0

私は VB.Net を使用していますが、問題は更新パネルがどのように試してもページ全体が読み込まれることです。ウェブサイトからサンプルコードをダウンロードして実行すると、動作します!!! これらのサンプルのコード全体を新しく作成した Web フォームにコピーして実行しても、ページ全体が更新されます!! 何が問題なのですか?PS。私はすでにweb.configで試しましたが、違いはありませんでした!! :(

WebForm1.aspx

   <%@ Page Language="vb" AutoEventWireup="false" CodeBehind="WebForm1.aspx.vb" Inherits="WebApplication1.WebForm1" %>

<%@ Register Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
    Namespace="System.Web.UI" TagPrefix="asp" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>How to use UpdatePanel</title>
</head>
<body>
    <form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true" />

        <asp:Label ID="lblTime1" runat="server" /><br />
        <asp:Button ID="butTime1" runat="server" Text="Refresh Panel" /><br /><br />

        <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="butTime1" EventName="Click" />
                <asp:PostBackTrigger ControlID="butTime2" />
            </Triggers>

            <ContentTemplate>
                <asp:Label ID="lblTime2" runat="server" /><br />
                <asp:Button ID="butTime2" runat="server" Text="Refresh Page" /><br />
            </ContentTemplate>
        </asp:UpdatePanel>
        <br />

        <asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="DropDownList1" EventName="SelectedIndexChanged" />
            </Triggers>

            <ContentTemplate>
                <asp:Label ID="lblTime3" runat="server" /><br />
            </ContentTemplate>
        </asp:UpdatePanel>

        <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true">
            <asp:ListItem>Change</asp:ListItem>
            <asp:ListItem>My</asp:ListItem>
            <asp:ListItem>Value</asp:ListItem>
        </asp:DropDownList>
    </form>
</body>
</html>

WebForm1.aspx.vb

 Public Partial Class WebForm1
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        lblTime1.Text = DateTime.Now.ToString("T")
        lblTime2.Text = DateTime.Now.ToString("T")
        lblTime3.Text = DateTime.Now.ToString("T")
    End Sub
End Class
4

1 に答える 1

-1

.net フレームワーク v1.1 からアップグレードされた古いプロジェクトがある場合は、Web 構成から次の行を削除して機能させます。

<xhtmlConformance mode="Legacy"/>

上記を削除することの意味についてはGoogleですが、今は2018年であることを念頭に置いてください。これはもはや本当の問題ではありません.2003年からコードにまだ取り組んでいるほど不運な人は私だけに違いありません:(

于 2018-10-29T16:24:51.740 に答える