EWSoftware.PDI.Windows.Forms

This library contains some Windows Forms controls that can be used to edit holiday calculation settings and to edit recurrence settings. See the project website for the code, a help file, and demos.


Keywords
PDI, personal, data, interchange, Windows, Forms, controls, recurrence, RFC, 2445
License
MS-PL
Install
Install-Package EWSoftware.PDI.Windows.Forms -Version 2023.1.2

Documentation

EWSoftware.PDI Library

NOTE: The master branch is for Visual Studio 2017 15.5 and later. For Visual Studio 2017 15.4 and earlier, use the Legacy branch.

The EWSoftware Personal Data Interchange (PDI) Library presents you with a complete set of classes that let you have access to all objects, properties, parameter types, and data types as defined by the vCard (RFC 2426), vCalendar, and iCalendar (RFC 2445) specifications. Using these classes, you can read and write data files in a well-defined format used by many applications on various platforms to exchange personal information such as business cards, telephone numbers, addresses, dates and times of appointments, etc.

A recurrence engine is also provided that allows you to easily and reliably calculate recurrence dates and times for even the most complex recurrence patterns. The classes can be used in both Windows Forms applications and ASP.NET web applications. Windows Forms and ASP.NET controls are included for editing recurrence patterns in a user-friendly fashion.

The included web application demonstrates various aspects of the EWSoftware PDI classes (a C# and a VB.NET version are included). It covers most of the same areas as the other Windows Forms applications included in the source code and shows several examples of data binding with the collection objects. It also demonstrates the recurrence pattern editor web server control. The demo web application is available online so you can try it out.

NuGet packages are available:

See the online help content for usage and API information.

See the Project Wiki for information on requirements for building the code and contributing to the project.