webcontrol的视图状态在哪里?

时间:2011-08-25 22:44:45

标签: c# asp.net controls viewstate web-controls

TextBoxWebControlControl属性为ViewState

为什么当我输入'。'时在myTextBox之后,ViewState属性是否出现在属性和方法列表中?

2 个答案:

答案 0 :(得分:3)

它适用于需要保留视图状态的自定义控件,而不是用于外部修改。它是protected(即只能从派生对象访问)。

例如,如果您创建了一个滑块控件来保持其所处位置的视图状态,则需要使用ViewState属性。但是没有理由使用滑块控件的viewstate。

答案 1 :(得分:2)

你无法看到它,因为它受到保护。

以下是元数据的属性:

[Browsable(false)]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
protected virtual StateBag ViewState { get; }

与ViewState StateBag的交互是通过SaveViewState和LoadViewState方法处理的,这些方法也受到保护,只能由控件访问。

您不需要对控件的ViewState执行任何操作。它会保持自己。但是,您可以访问页面上的ViewState。