Click here to Skip to main content
15,868,292 members
Articles / Web Development / ASP.NET
Article

PersianCalendar WebControl Using With AJAX.NET & AjaxControlToolkit

Rate me:
Please Sign up or sign in to vote.
4.80/5 (29 votes)
15 Feb 2007CPOL 121.7K   4.8K   42   49
This is a Persian web calendar with full features like ASP.NET 2.0 Calendar Control

Sample Image - PersianCalendarControl.jpg

Introduction

This is a Persian calendar Web Custom control with full features like ASP.NET 2.0 Calendar.

In the demo project, I have used AJAX.NET and AjaxControlToolkit(http://ajax.asp.net/downloads/default.aspx?tabid=47).

For retrieving & setting the Persian date, use "SelectedDatePersian" Properties.You can also use "SelectedDate" Properties for retrieving the selected date in Christ format.This control supports range date selection. For enabling this feature, you must set "SelectionMode" properties to "DayWeekMonth" or "DayWeek" and for retrieving, selected dates range from "SelectedDates" Properties.

C#
PersianCalendar1.SelectionMode = CalendarSelectionMode.DayWeekMonth;
List<DateTime> selectedDates = 
    (List<DateTime>)PersianCalendar1.SelectedDates.GetEnumerator();

For formatting the selected Persian date, use "SelectedPersianDateFormat".

C#
PersianCalendar1.SelectedPersianDateFormat == 
                    PersianDateStringType.LongReverse;

or

C#
PersianCalendar1.SelectedPersianDateFormat == PersianDateStringType.Short;

This example demonstrates how to use the PersianCalendar Control with AJAX UpdatePanel.

ASP.NET
<%@ Page Language="C#" AutoEventWireup="true" Codebehind="Default.aspx.cs" 
            Inherits="AJAXEnabledWebApplication1._Default" %>
<%@ Register Assembly="KingOf.Net.Web.UI.WebControls.PersianCalendar" 
    Namespace="KingOf.Net.Web.UI.WebControls" TagPrefix="KingOfDotNet" %>
<%@ Register Assembly="AjaxControlToolkit" 
    Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
  <form id="form1" runat="server">
      Persian Calendar Web Control Compatible With Ajax.Net<br />
      <asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True">
    </asp:TextBox><br />
      <asp:ScriptManager ID="ScriptManager1" runat="server" />
      <div>
          <cc1:PopupControlExtender ID="PopupControlExtender1" 
        runat="server" TargetControlID="TextBox1"
                PopupControlID="Panel1" Position="Bottom">
          </cc1:PopupControlExtender>
          <asp:Panel ID="Panel1" runat="server" CssClass="popupControl">
              <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                  <ContentTemplate>
                      <center>
                          <KingOfDotNet:PersianCalendar ID="PersianCalendar1" 
                        runat="server" BackColor="#FFFFCC"
                              BorderColor="#FFCC66" BorderWidth="1px" 
                        DayNameFormat="Shortest" Font-Names="Verdana"
                              Font-Size="8pt" ForeColor="#663399" 
                        Height="200px" OnSelectionChanged=
                            "PersianCalendar1_SelectionChanged"
                              SelectedDate="2000-01-01" ShowGridLines="True" 
                            VisibleDate="2000-01-01" Width="220px"
                              SelectedPersianDateFormat="Long">
                              <SelectedDayStyle BackColor="#CCCCFF" 
                                Font-Bold="True" />
                              <TodayDayStyle BackColor="#FFCC66" 
                                ForeColor="White" />
                              <SelectorStyle BackColor="#FFCC66" />
                              <OtherMonthDayStyle ForeColor="#CC9966" />
                              <NextPrevStyle Font-Size="9pt" 
                                ForeColor="#FFFFCC" />
                              <DayHeaderStyle BackColor="#FFCC66" 
                            Font-Bold="True" Height="1px" />
                              <TitleStyle BackColor="#990000" 
                            Font-Bold="True" Font-Size="9pt" 
                            ForeColor="#FFFFCC" />
                          </KingOfDotNet:PersianCalendar>
                          &nbsp;
                      </center>
                  </ContentTemplate>
              </asp:UpdatePanel>
          </asp:Panel>
      </div>
  </form>
</body>
</html>

C#
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Globalization;
using KingOf.Net.Web.UI.WebControls;

namespace AJAXEnabledWebApplication1
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }

        protected void PersianCalendar1_SelectionChanged
                                (object sender, EventArgs e)
        {
            PopupControlExtender1.Commit(PersianCalendar1.SelectedDatePersian);
        }
    }
}

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Web Developer
Iran (Islamic Republic of) Iran (Islamic Republic of)
Python, PostgreSQL, Cherrypy, Apache, .Net , C#, Asp.net, .Net Remoting, Ajax, Controls, MVC, SOA, SOAP, Razor

Comments and Discussions

 
Questionpersain Calendar Pin
Member 106272361-Mar-14 7:24
Member 106272361-Mar-14 7:24 
GeneralMy vote of 5 Pin
Member 94374058-Feb-13 18:41
Member 94374058-Feb-13 18:41 
Questionmy vote of 5 Pin
mheidari17-Sep-12 10:09
mheidari17-Sep-12 10:09 
AnswerRe: my vote of 5 Pin
vahid_mardani26-Sep-12 12:29
vahid_mardani26-Sep-12 12:29 
GeneralMy vote of 5 Pin
Mohammad Zare12-Jul-12 22:03
Mohammad Zare12-Jul-12 22:03 
QuestionVery nice Pin
masoudweb6-Aug-11 21:06
masoudweb6-Aug-11 21:06 
AnswerRe: Very nice Pin
vahid_mardani6-Aug-11 23:24
vahid_mardani6-Aug-11 23:24 
GeneralMy vote of 5 Pin
Member 79056527-May-11 23:00
Member 79056527-May-11 23:00 
GeneralUse one calender for multiple textbox Pin
faraX_Xx21-Dec-10 23:31
faraX_Xx21-Dec-10 23:31 
GeneralExcellent Pin
Kamyar21-Oct-10 5:29
Kamyar21-Oct-10 5:29 
GeneralRe: Excellent Pin
vahid_mardani25-Oct-10 6:19
vahid_mardani25-Oct-10 6:19 
GeneralMy vote of 5 Pin
Kamyar21-Oct-10 5:26
Kamyar21-Oct-10 5:26 
GeneralMy vote of 5 Pin
sanam6428-Aug-10 10:45
sanam6428-Aug-10 10:45 
GeneralRe: My vote of 5 Pin
vahid_mardani25-Oct-10 6:18
vahid_mardani25-Oct-10 6:18 
Generalthis is brilliant piece of work Pin
kazim bhai18-Nov-08 0:59
kazim bhai18-Nov-08 0:59 
Good stuff this is really great stuff to be used

Kazim

It is Kazim

Questionhi i have e a little problem with this one Pin
Nika Asgari1-Sep-08 0:18
Nika Asgari1-Sep-08 0:18 
AnswerRe: hi i have e a little problem with this one Pin
Nika Asgari1-Sep-08 18:23
Nika Asgari1-Sep-08 18:23 
AnswerRe: hi i have e a little problem with this one Pin
vahid_mardani2-Sep-08 11:10
vahid_mardani2-Sep-08 11:10 
Generali have a problem Pin
Member 33503224-Jun-08 20:23
Member 33503224-Jun-08 20:23 
GeneralSuggestionُ Pin
Abbas Sarraf19-Feb-08 1:21
Abbas Sarraf19-Feb-08 1:21 
GeneralThanks Pin
Mohebbi.Saeed11-Feb-08 9:06
Mohebbi.Saeed11-Feb-08 9:06 
General[Message Removed] Pin
Mojtaba Vali9-Feb-08 20:41
Mojtaba Vali9-Feb-08 20:41 
GeneralRe: YearPopup and Month popup Problem Pin
vahid_mardani10-Feb-08 11:17
vahid_mardani10-Feb-08 11:17 
GeneralConfiguration Error Pin
hassan azizi9-Nov-07 21:52
hassan azizi9-Nov-07 21:52 
AnswerRe: Configuration Error Pin
vahid_mardani10-Feb-08 11:23
vahid_mardani10-Feb-08 11:23 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.