gtk-sharp 2.12.0.0 Gtk# is thread aware, but not thread safe; See the Gtk# Thread Programming for details. Display a Calendar and/or allow the user to select a date. With a Calendar widget, dates are presented to the user one month at a time. Additional information and decorations can be added to the Calendar by using the enumeration with the property. Days can be highlighted on the Calendar with or . The following example shows a method that creates a simple Calendar displaying day names, headings and week numbers. // Create a calendar with some simple display options public Calendar CreateCalendar () { Calendar cal = new Calendar (); cal.DisplayOptions = CalendarDisplayOptions.ShowHeading | CalendarDisplayOptions.ShowDayNames | CalendarDisplayOptions.ShowWeekNumbers; cal.DaySelected += new EventHandler(HandleDaySelected); return cal; } The following example shows a typical event handler that outputs the date when one is selected. // Typical event handler for capturing the selected date void HandleDaySelected (object obj, EventArgs args) { Calendar activatedCalendar = (Calendar) obj; Console.WriteLine (activatedCalendar.GetDate ().ToString ("yyyy/MM/dd")); } Gtk.Widget Method System.Boolean Removes a visual marker from the specified . A day number from 1 to 31. Visual markers are added to the Calendar with . Method System.Boolean Adds a visual marker to the specified . A day number from 1 to 31. Method System.Void Select a specified day on the displayed month. A day number from 1 to 31. A value of 0 for the will unselect the currently selected day. Method System.Void Stops the Calendar from visually updating. If used before a large number of graphical updates, (such as calls to ), this method may prevent flicker. Once a batch of updates has taken place, call to render them. Method System.Void Get the selected date. A variable to place the chosen year in. A variable to place the chosen month in. A variable to place the chosen day in. NOTE: That month number is ZERO based, (0-11), whereas the day is one based, (1-31). An alternative way to get the date is with the method. Method System.Void Removes the effects of calling . This draws all graphical updates to the Calendar that have happened since a . Method System.Void Removes all visual marks that have been added to dates. Method System.Boolean Shifts the Calendar to display the specified month. A zero-based month number. The year the month is in. Constructor Internal constructor Pointer to the C object. This is an internal constructor, and should not be used by user code. Constructor Creates a new Calendar displaying the current month and having the current day selected Event System.EventHandler Raised when the current year of the Calendar is increased. This may happen when the user explicitly advances the year, or when advancing from December to January. GLib.Signal("next_year") Event System.EventHandler Raised when the user "double clicks" on a day. GLib.Signal("day_selected_double_click") Event System.EventHandler Raised when the current year of the Calendar is decreased. This may happen when the user explicitly advances the year, or when clicking 'back' from January to December. GLib.Signal("prev_year") Event System.EventHandler Raised when the current month changes. GLib.Signal("month_changed") Event System.EventHandler Raised when the month of the Calendar moves to the next one. GLib.Signal("next_month") Event System.EventHandler Raised when a day is selected on the Calendar. GLib.Signal("day_selected") Event System.EventHandler Raised when the Calendar moves to the previous month. GLib.Signal("prev_month") Method System.DateTime Get the selected date. A DateTime object containing the selected day, month and year. Selected date information can also be retrieved with the method. Property GLib.GType GType Property. a Returns the native value for . Method System.Void Default handler for the event. Override this method in a subclass to provide a default handler for the event. Method System.Void Default handler for the event. Override this method in a subclass to provide a default handler for the event. Method System.Void Default handler for the event. Override this method in a subclass to provide a default handler for the event. Method System.Void Default handler for the event. Override this method in a subclass to provide a default handler for the event. Method System.Void Default handler for the event. Override this method in a subclass to provide a default handler for the event. Method System.Void Default handler for the event. Override this method in a subclass to provide a default handler for the event. Method System.Void Default handler for the event. Override this method in a subclass to provide a default handler for the event. Constructor Protected Constructor. a Chain to this constructor if you have manually registered a native value for your subclass. System.Obsolete Property System.DateTime a DateTime that contains the current day for the Calendar widget a Setting the date fires Calendar changes events (Day, Month/Year) Property System.Int32 The selected day as a number between 1 and 31, or 0 to unselect the currently selected day. a GLib.Property("day") Property System.Boolean If , week numbers are displayed a GLib.Property("show-week-numbers") Property System.Boolean If , day names are displayed. a GLib.Property("show-day-names") Property System.Boolean If , a heading is displayed a GLib.Property("show-heading") Property System.Int32 The selected month as a number between 0 and 11. a GLib.Property("month") Property System.Int32 The selected year. a GLib.Property("year") Property System.Boolean If , the selected month can not be changed. a GLib.Property("no-month-change") Property Gtk.CalendarDisplayOptions Set the display options for this Calendar. One or more values from , combined using a bit-wise OR. This method allows fine control over which parts of the Calendar, such as day names, are displayed. The describe the choices in more detail.