C# 为什么在启用viewstate的情况下重置表单字段?

C# 为什么在启用viewstate的情况下重置表单字段?,c#,asp.net,viewstate,C#,Asp.net,Viewstate,我有一个简单的asp.net Web表单,其中包含一些文本框和复选框。我正在使用自定义验证器进行验证。问题是当出现验证错误时,它不会保留用户选中的复选框选项 在页面顶部,我启用了viewstate,并通过查看生成的html代码验证了这一点 viewstate不应该存储这些信息吗,或者我在这里有什么误解吗?您是否在代码隐藏中进行任何设置 如果您要发回进行验证,则可能会覆盖视图状态中的内容。我明白为什么。。。对于复选框,我使用了常规的Html复选框,而不是服务器控制复选框。我认为您需要显示一些代码,

我有一个简单的asp.net Web表单,其中包含一些文本框和复选框。我正在使用自定义验证器进行验证。问题是当出现验证错误时,它不会保留用户选中的复选框选项

在页面顶部,我启用了viewstate,并通过查看生成的html代码验证了这一点


viewstate不应该存储这些信息吗,或者我在这里有什么误解吗?

您是否在代码隐藏中进行任何设置


如果您要发回进行验证,则可能会覆盖视图状态中的内容。

我明白为什么。。。对于复选框,我使用了常规的Html复选框,而不是服务器控制复选框。

我认为您需要显示一些代码,因为这是一个自定义验证器,我们可以帮助您。请提供一些示例代码。视图状态不是“魔法”,它在正确使用时有效,在出现问题时无效,就像一切一样。是的-注意你的.IsPostBack检查!