1

我正在使用带有文本框的 CalendarExtender 作为目标控件。我的代码如下:

<asp:TextBox ID="textBoxFromDate" runat="server" EnableViewState="true" />
<asp:CalendarExtender ID="textBoxFromDate_CalendarExtender" runat="server" Enabled="True"
                    TargetControlID="textBoxFromDate" Format="dd/MM/yyyy" EnableViewState="true">
</asp:CalendarExtender>

所以我使用日历控件来设置文本框中的值。这很好用,但是当页面上发生回发时,文本框值将重置为日历控件的默认日期。

如何让文本框在回发时保留其价值?

提前致谢。

我正在使用 ASP.Net 4.0。

4

1 回答 1

3

您是否尝试动态设置只读字段而不是在标记中?另外,我会确保您Page_Load()在回发期间没有重置值。

或者尝试这样的事情Page_load,在尝试将其设置为日历扩展器选择的日期之前,还要检查框中是否有有效日期?

if (IsPostBack) 
{ 
    MyCalendarExtender.SelectedDate =
        DateTime.ParseExact(MyTextBox.Text, MyCalendarExtender.Format, null); 
} 
于 2012-10-02T08:24:13.297 回答