gpt4 book ai didi

c# - 我有一个为 ViewState 赋值的控件。它有效,但 ViewState 被禁用。如何?

转载 作者:太空宇宙 更新时间:2023-11-03 20:30:01 26 4
gpt4 key购买 nike

我在我的 ASPX 页面上禁用了 ViewState:

<%@ Page Title="Home Page" MasterPageFile="~/Views/Shared/WebForm.master" Language="C#" EnableViewState="False" AutoEventWireup="True" CodeBehind="Dashboard.aspx.cs" Inherits="CableSolve.Web.Dashboard.Dashboard"%>

我有以下类(class):

public class DashboardUpdatePanel : UpdatePanel
{
public DashboardUpdatePanel()
{
UpdateMode = UpdatePanelUpdateMode.Conditional;
CssClass = "maxHeight";
}

[Category("Appearance")]
[Description("The CSS class applied to the UpdatePanel rendering")]
public string CssClass
{
get
{
string s = (string)ViewState["CssClass"];
return s ?? String.Empty;
}
set
{
ViewState["CssClass"] = value;
}
}

protected override void RenderChildren(HtmlTextWriter writer)
{
if (IsInPartialRendering == false)
{
string cssClass = CssClass;
if (cssClass.Length > 0)
{
writer.AddAttribute(HtmlTextWriterAttribute.Class, cssClass);
}
}
base.RenderChildren(writer);
}
}

如果我删除对 CssClass 属性的分配,我会在我的页面上看到效果。然而,setter 正在将值分配给 ViewState。

这是如何运作的?当然,如果 ViewState 被禁用,无论我是否分配了 CssClass,我都不会看到任何区别。

最佳答案

禁用 ViewState 意味着 ViewState 不会在回传中保留。

在回传中,ViewState 仍然有效。

关于c# - 我有一个为 ViewState 赋值的控件。它有效,但 ViewState 被禁用。如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7985904/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com