ASPxTextBox为什么以及如何在页面刷新/重新加载时保持文本?

时间:2014-12-24 17:08:23

标签: devexpress

我注意到ASPxTextBox(和其他编辑器)组件中有趣的行为。如果我有一个表格,让我们说ASPxTextBox,并在thta文本框中写入一些东西,这个文本坚持跨页面刷新。单击按钮刷新或F5。如果用CTRL + F5完全重新加载,那么该值将被清除,因为它应该在正常的重载/刷新时。 我知道dev表达编辑器不使用视图状态,所以他们如何坚持这个值。 这是正常的,因为用户会希望清除表单中的刷新值。怎样才能实现这个值的清除?不,我没有考虑在代码中清除它。有“自然”的方式吗? 在最简单的情况下,这种行为很明显:

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>        
        <dx:ASPxTextBox ID="ASPxTextBox1" runat="server" Width="170px">
        </dx:ASPxTextBox>
    </div>
    </form>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

  

我知道开发编辑不使用视图状态

DevExpress控件肯定使用viewstate。我认为,当您按 F5 时,由于某种原因它正在进行回发,并且该值正在从视图状态恢复。除了来自viewstate之外,没有其他可能的方法可以获得前一个值。我建议您可以通过在Page_Load事件中添加断点并检查Request.Form[control.UniqueID]的值来进行验证。如果你得到任何价值,那么它的观点肯定会发挥作用。