如何在c#中单击文本框显示日历

本文关键字:文本 显示 日历 单击 | 更新日期: 2023-09-27 17:50:58

这是我试图使用web控件在其他表单中的其他地方使用的代码,但当我将其拖动到其他表单时,它显示错误,请查看代码并告诉我哪里会出错,谢谢你。

    <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="calander.ascx.cs" Inherits="Facultymanagement.calander" %>

<%--<%@ Import Namespace="AjaxControlToolkit" %>--%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajaxToolkit" %>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
<style type="text/css">
/*Calendar Control CSS*/
.cal_Theme1 .ajax__calendar_container   {
background-color: #DEF1F4;
border:solid 1px #77D5F7;
}
.cal_Theme1 .ajax__calendar_header  {
background-color: #ffffff;
margin-bottom: 4px;
}
.cal_Theme1 .ajax__calendar_title,
.cal_Theme1 .ajax__calendar_next,
.cal_Theme1 .ajax__calendar_prev    {
color: #004080;
padding-top: 3px;
}
.cal_Theme1 .ajax__calendar_body    {
background-color: #ffffff;
border: solid 1px #77D5F7;
}
.cal_Theme1 .ajax__calendar_dayname {
text-align:center;
font-weight:bold;
margin-bottom: 4px;
margin-top: 2px;
color: #004080;
}
.cal_Theme1 .ajax__calendar_day {
color: #004080;
text-align:center;
}
.cal_Theme1 .ajax__calendar_hover .ajax__calendar_day,
.cal_Theme1 .ajax__calendar_hover .ajax__calendar_month,
.cal_Theme1 .ajax__calendar_hover .ajax__calendar_year,
.cal_Theme1 .ajax__calendar_active  {
color: #004080;
font-weight: bold;
background-color: #DEF1F4;
}
.cal_Theme1 .ajax__calendar_today   {
font-weight:bold;
}
    .cal_Theme1 .ajax__calendar_other,
    .cal_Theme1 .ajax__calendar_hover .ajax__calendar_today,
    .cal_Theme1 .ajax__calendar_hover .ajax__calendar_title {
    color: #bbbbbb;
    }
    </style>
    </head>
    <body>
    <form id="form1" runat="server">
     <asp:ScriptManager ID="script" runat="server">
     </asp:ScriptManager>
    <div>
    <asp:TextBox  ID="tbEndDate" runat="server" CausesValidation="true" ReadOnly="true" Width="175px" />
    <ajaxToolkit:CalendarExtender ID="CalendarExtender1" runat="server"  TargetControlID="tbEndDate" CssClass= " cal_Theme1" />
    </div>
    </form>
    </body>
    </html>

如何在c#中单击文本框显示日历

您可以为文本框设置Ajax日历扩展程序。。

 <asp:TextBox ID="dtpTransDate" runat="server" Width="90px"></asp:TextBox>
  <asp:CalendarExtender ID="dtpTransDate_CalendarExtender" runat="server" 
  Enabled="True" Format="dd/MM/yyyy" TargetControlID="dtpTransDate">
  </asp:CalendarExtender>

您也可以使用jQuery修复该问题。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<script>
 $(document).ready(function() {
  $("#textboxid").datepicker();
 });
</script>
<asp:TextBox ID="textboxid" runat="server" Width="100px"></asp:TextBox>

如果控件位于母版页的子页中然后使用ClientIDMode

<asp:TextBox ID="textboxid" runat="server" Width="100px" ClientIDMode="Static"></asp:TextBox>

检查下面的ClientIDMode 链接

http://msdn.microsoft.com/en-us/library/system.web.ui.control.clientidmode(v=vs.110(.aspx

对于jQuery日历检查下面的链接

http://jqueryui.com/datepicker/