İngilizce dilinde oku

Aracılığıyla paylaş


UpdatePanelUpdateMode Sabit listesi

Tanım

Denetimdeki içerik UpdatePanel için olası güncelleştirme modlarını temsil eder.

C#
public enum UpdatePanelUpdateMode
Devralma
UpdatePanelUpdateMode

Alanlar

Always 0

Denetimin UpdatePanel içeriği, sayfadan kaynaklanan tüm geri göndermeler için güncelleştirilir. Buna zaman uyumsuz geri göndermeler dahildir.

Conditional 1

Denetimin içeriğinin UpdatePanel güncelleştirildiği bir dizi koşul belirtir; Daha fazla bilgi için Açıklamalar bölümüne bakın.

Örnekler

Aşağıdaki örnekte iki UpdatePanel denetim bildirmektedir. İlk panel özelliği olarak UpdatePanel.UpdateMode Conditionalayarlar. İkinci panel varsayılan olarak olarak ayarlanmıştır UpdatePanel.UpdateMode Always . Her iki panelin dışındaki bir düğme, yöntemi kullanılarak ScriptManager.RegisterAsyncPostBackControl zaman uyumsuz geri gönderme denetimi olarak kaydedilir. Düğmenin tıklama olayı işleyicisinde, UpdatePanel.Update son güncelleştirmesinden bu yana beş saniyeden fazla zaman geçtiyse ilk panelin yöntemi çağrılır. Bu senaryoda panelin içeriği yalnızca son panel güncelleştirmesi beş saniyeden uzun bir süre önceyse güncelleştirilir. İkinci panelin içeriği her zaman güncelleştirilir.

ASP.NET (C#)

<%@ Page Language="C#" %>

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

<script runat="server">
    protected DateTime LastUpdate
    {
        get
        {
            return (DateTime)(ViewState["LastUpdate"] ?? DateTime.Now);
        }
        set
        {
            ViewState["LastUpdate"] = value;
        }
    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        if (LastUpdate.AddSeconds(5.0) < DateTime.Now)
        {
            UpdatePanel1.Update();
            LastUpdate = DateTime.Now;
        }
    }

    protected void Page_Load(object sender, EventArgs e)
    {

        ScriptManager1.RegisterAsyncPostBackControl(Button1);   
        if (!IsPostBack)
        {
            LastUpdate = DateTime.Now;
        }
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>UpdatePanelUpdateMode Example</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:ScriptManager ID="ScriptManager1"
                               runat="server" />
            <asp:Panel ID="Panel1"
                       GroupingText="UpdatePanel1"
                       runat="server">
                <asp:UpdatePanel ID="UpdatePanel1"
                                 UpdateMode="Conditional"
                                 runat="server">
                    <ContentTemplate>
                        <p>
                            The content in this UpdatePanel only refreshes if five or more
                            seconds have passed since the last refresh and the button in
                            UpdatePanel2 was clicked. The time is checked
                            server-side and the UpdatePanel.Update() method is called. Last
                            updated: <strong>
                                <%= LastUpdate.ToString() %>
                            </strong>
                        </p>
                    </ContentTemplate>
                </asp:UpdatePanel>
            </asp:Panel>
            <asp:Panel ID="Panel2"
                       GroupingText="UpdatePanel2"
                       runat="server">
                <asp:UpdatePanel ID="UpdatePanel2"
                                 runat="server">
                    <ContentTemplate>
                        <p>
                            This UpdatePanel always refreshes if the button is clicked.
                            Last updated: <strong>
                                <%= DateTime.Now.ToString() %>
                            </strong>
                        </p>
                    </ContentTemplate>
                </asp:UpdatePanel>
            </asp:Panel>
            <asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click" />
        </div>
    </form>
</body>
</html>

Açıklamalar

UpdatePanelUpdateMode Numaralandırma özelliği tarafından UpdatePanel.UpdateMode kullanılır ve bir UpdatePanel denetimin içeriği için olası güncelleştirme modlarını tanımlar. Denetim, UpdatePanel özelliğin ScriptManager.EnablePartialRendering kısmi sayfa işleme için gerçekleşmesini true gerektirir.

özelliğinin UpdatePanel.UpdateMode varsayılan değeri şeklindedir Always.

Denetim başka bir UpdatePanel denetimin UpdatePanel içindeyse ve üst panel güncelleştirildiyse, iç içe geçmiş panel de özellik değerinden UpdateMode bağımsız olarak güncelleştirilir.

değeri, Conditional denetimin UpdatePanel içeriğini aşağıdaki koşullar altında güncelleştirir:

  • UpdatePanel.Update yöntemi açıkça çağrılır.

  • Denetim, özelliğini kullanarak tetikleyici olarak tanımlanır ve geri göndermeye UpdatePanel.Triggers neden olur. Bu senaryoda denetim, panel içeriğini güncelleştirmek için açık bir tetikleyicidir. Tetikleyici denetimi, tetikleyiciyi tanımlayan denetimin UpdatePanel içinde veya dışında olabilir.

  • UpdatePanel.ChildrenAsTriggers özelliği olarak true ayarlanır ve denetimin alt denetimi geri göndermeye UpdatePanel neden olur. Bu senaryoda, denetimin UpdatePanel alt denetimleri paneli güncelleştirmek için örtük tetikleyicilerdir. İç içe denetimlerin UpdatePanel alt denetimleri, açıkça tetikleyici olarak tanımlanmadığı sürece dış UpdatePanel denetimin güncelleştirilmesine neden olmaz.

Şunlara uygulanır

Ürün Sürümler
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8

Ayrıca bkz.