AjaxToolKit CalendarExtender问题

时间:2011-11-02 17:58:25

标签: c# ajaxcontroltoolkit calendarextender

在我的摘要页面中,我有两个CalendarExtender控件,可让某人为数据库查询选择开始日期和结束日期。

在Summary.aspx页面的头部,我有以下声明:

<%@ MasterType VirtualPath="~/Site.Master" %>
<%@ Page Title="ACP Sheet Metal - Summary" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Summary.aspx.cs" Inherits="AcpSheetMetal.Summary" UICulture="es" Culture="es-MX" %>
<% @Import Namespace="System.Globalization" %>
<%@ Register TagPrefix="asp" Namespace="AjaxControlToolkit" Assembly="AjaxControlToolkit"%>

对于页面本身,我有一个ToolkitScriptManager,两(2)个TextBox控件,两个CalendarExtender控件和一个GridView控件:

<ajaxToolkit:ToolkitScriptManager ID="ToolkitScriptManager2" runat="server" EnableScriptGlobalization="true" EnableScriptLocalization="true" />
<asp:TextBox ID="txtStartDate" runat="server" />
<asp:CalendarExtender ID="calExStartDate" runat="server" TargetControlID="txtStartDate" OnClientShown="ChangeCalendarView" OnClientDateSelectionChanged="checkDate" />
<asp:TextBox ID="txtEndDate" runat="server" />
<asp:CalendarExtender ID="calExEndDate" runat="server" TargetControlID="txtEndDate" OnClientShown="ChangeCalendarView" OnClientDateSelectionChanged="checkDate" DaysModeTitleFormat="MM/dd/yyyy" DefaultView="Months" Enabled="True" TodaysDateFormat="MMMM dd, yyyy" />
<asp:GridView ID="summaryGridView" runat="server" />

在C#代码的Page_Load事件中,我放置了以下内容:

protected void Page_Load(object sender, EventArgs e) {
  MasterPage = (SiteMaster)Page.Master;
  if (!Page.IsPostBack) {
    calExEndDate.TodaysDateFormat = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern;
    calExStartDate.TodaysDateFormat = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern;
  }
}

那么,为什么我的Calendar控件不起作用?日历中没有值,语言似乎是西班牙语。

enter image description here

2 个答案:

答案 0 :(得分:2)

只需在ScriptManager中添加EnableScriptGlobalization =“true”,如下所示:

答案 1 :(得分:1)

您的语言是西班牙语,我相信是因为您的UICultureUICulture="es"(ESpañol)和Culture="es-MX"(EspañolMéxico)。

在标记上看到这一行:

<%@ Page Title="ACP Sheet Metal - Summary" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Summary.aspx.cs" Inherits="AcpSheetMetal.Summary" UICulture="es" Culture="es-MX" %>

你的其他标记对我来说没问题。