Ajax Control Toolkit Calendar控件在DetailsView EditItemTemplate中不起作用

时间:2011-12-14 14:29:59

标签: asp.net calendar ajaxcontroltoolkit detailsview edititemtemplate

我有一堆带有EditItemTemplates的DetailsView。其中一个有一个接受日期的文本框。为了使表单更加用户友好,我想添加一个Ajax工具包日历控件,以便用户可以从日历中选择一个日期。我在尝试加载页面时遇到错误。

分析程序错误消息:未知的服务器标记'ajc:Calendar'。

我的注册标记是正确的。

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajc" %>

我的EditItemTemplate看起来像这样。没什么好看的。

 <EditItemTemplate>
       <asp:TextBox ID="txtGrantedDate" runat="server" Text='<%#  Bind("GrantedDate") %>' />
       <ajc:Calendar  PopupPosition="Right" runat="server"
              TargetControlID="txtGrantedDate"
              Format="MMMM d, yyyy" SelectionMode="Day"
              PopupButtonID="imgGrantedDate" ></ajc:Calendar>
       <asp:Image ID="imgGrantedDate" runat="server" Width="20px" Height="20px" AlternateText="calendar" ImageUrl="~/Images/calendar.png" />
 </EditItemTemplate>

我可能在哪里出错并且在DetailsView控件中甚至允许使用ajax控件?

1 个答案:

答案 0 :(得分:4)

这太傻了。如果你们遇到这个问题,日历扩展器的正确服务器标签是

<ajc:CalendarExtender> 

<ajc:Calendar>

你问的混淆的原因是什么?事实证明,Ajax控件工具包上的示例包含以下内容:

<ajaxToolkit:Calendar runat="server"
    TargetControlID="Date1"
    CssClass="ClassName"
    Format="MMMM d, yyyy"
    PopupButtonID="Image1" />

您可以自己查看:

Ajax Control Toolkit Calendar Extender

展开“日历属性”部分,您将看到我上面复制的代码。