Project Description
I had a problem where the default Calendar control did not allow for customization on day values. So I created a custom WCF hosted Silverlight Calendar controls that allow for appointment making and half day events.

I had a problem statement where I needed to be able to display a Calendar control that showed appointment dates that covered full-day, half-day, and week to month spans. After many hours/days of research I was unable to find anything available so I decided to create my own. In the zip file you will find to sub folders ControlLibrary and ServiceBuild. The ServiceBuild is a release for the WCF service that host all of the customization factors for the Calendar Control (i.e. Appointment dates, Highlighting values). The ControlLibrary folder is the Silverlight Control Library for the Calendar. I was in the process of release a full fledged Silverlight control library but though I would release it as it is and see what the community thinks about it first before I embarrass myself.

I see that a lot of people are downloading this control (which I am glad for). Let me know what you think about it, or how you are using it. It will let me know how I should make future upgrades/enhancments to the control. I can custom taylor make this control to fit anyone's needs, but you have to let me know how you are using it so I can fit it that way.

If you like what you see please start a discussion on review/rate the application. This way it will raise the awareness of the application to more communities and threads. Tell your friends/co-workers about the application. The more people looking and thinking about this product the better in the long run it will become. I have not had anyone make any suggestions yet; however, I am all ears on any new ideas/imporovements.

I am not a graphic artist by no means and if anyone with an eye for graphics would like to help out with the control please let me know. I could really use the help to overcome the "Programmers Design" touch that seems to overwelm this app.

NOTE:
I have converted the project to version 3.0 as of 10/20/2009 @ 11:30. The downloads page will continue to have the version 2.0 project as a possilbe download but will no longer be adding updates to this project unless requested. The new recomended version will be in the Source Code tab and on the downloads page.

The calendar supports different starting views such as Decade, Year, and Month. It also supports features such as:
Show Next-Previous Month
Show Next-Previous Year
Show Next-Previous Decade
Back out from Month to Year to Decade
Abbreviating Month-Day names
Color Settings (change day colors (full or half day), header, year and month (selection, border, default background), and overall background for Calendar)
High-Lights current Year, Month, Day
SelectionMode on the SelectionCalendar. The modes will be single and multiple. Both modes now fire an event with the list of selected dates.

Decade View Month View Day View (Regular) Day View (Half-Day)
ClassicCalendar_Decade.png ClassicCalendar_Year.png ClassicCalendar_Month.png ClassicCalendar_Month2.png


Selection Year Selection Month Selection Day Selection Day View 2
ClassicCalendar_Decade_Selection.png ClassicCalendar_Year_Selection.png ClassicCalendar_Month_Selection.png ClassicCalendar_Month2_Selection.png

NOW Available

I have made some changes to the Outlook Calendar thanks to some sugestions from a pleased user. I have added a Year view that will display all Months in the year at one time and I have also added a "Hours Per Day" feature that will let you control the number of Hours displayed in one day (i.e. if hours per day is 2 then 12AM and 12PM will display giving you a "Half Day" effect).

I have created a Day Calendar that displays todays date. Its really simplistic but has many praticle uses. You can also set it to display a static date for blog post or itemized postings.

Day Calendar:
DayCalendar.png

User interface for the appointments has been completed (I hope...). Still may be a little buggy, but I am pushing it out anyways to show the capabilities. I am still working on incorporating this new UI into the Month View. I think I might actually take a different approach to it there. Because you can browse to a day from the Month I believe I might leave it as this to view the appointments. Thanks to ttschupp I have a lot of new ideas to play around with this weekend so keep checking back for updates because they are comming. I have now added MouseWheel support for the ScrollViewer on the Outlook Calendar. I have now added support for spanning hours for an appointment.

I am still working on the template parts of the Calendar.

Day View 1:
OutlookCalendar_Day3.png

Week View 1:
Outlook_Week1.png

Week View 2:
Outlook_Week2.png

Month View 1:
Outlook_Month1.png

Year View 1:
Outlook_Year.png

Day Existing Appointment:
OutlookCalendar_App_Day2.png


DateTimePicker DateTimePicker Extended
CalendarDateTimePicker1.jpg CalendarDateTimePicker2.jpg


The DateTimePicker fires an event when the selected date changes and also contains the value of the selected date.

Selection Mode Events:
CalendarMultipleSelection.jpg

Calendar Extended: Allows for three month previews of data displayed in regular calendar. I have created new views for both the Calendar and the Calendar Extended controls (i.e. DisplayMode Display and Selection). DisplayMode is the view that is show above. The new view will be the Selection DisplayMode.

ExpandedCalendar.png

Features Include:
Span 1 to n number of months.
Show next - previous year
Legend (Legend data is created dynamically from the data in the CalendarOptions.xml file located in the ClientBin folder)

Thanks to my first replier I have some new updates to report that are coming soon:

Header Templating:
CalendarHeaderTemplate.jpg

I have added the functionality to template each of the header button items (left, right) to allow for any type of content in the button itselft (i.e. paths (current), images, other controls).

I have also added events for the day selection to fire and return the Calendar and the DateTime object selected.

New Demo Viewer
I have updated the Demo application to show a little more insight into how the control can be exposed.

DemoViewer.png

CalendarDemoMode2.jpg

CalendarDemoMode3.jpg

Coming Soon

I have done some research on template parts and believe I will attempt to make a new release of all the calendar controls in the near future with the templating in full working condition. If there is any need/interest in this I can try and put a hurry on it but I have not heard too much from the community about this so it has taken a back seat to the rest of the overall work. Currently I have not found a good and clean way to develop the template parts yet so I am still doing some research; however, I might just drop this idea and leave the Calendars as they are for right now unless I hear some interest in the development. I believe I might start working on some new controls to add to the library instead of just the Calendar.

Tell me what you think.
Last edited Nov 10 2009 at 1:22 AM by dixxieonmymind, version 56

 

Want to leave feedback?
Please use Discussions or Reviews instead.

Updating...
© 2006-2010 Microsoft | About CodePlex | Privacy Statement | Terms of Use | Code of Conduct | Advertise With Us | Version 2010.1.12.16187