ClassAppointment
Provides a complete implementation of the IAppointment interface with additional properties for comprehensive appointment management. This class serves as the standard appointment type for RadScheduler and includes commonly needed properties like Body, Location, UniqueId, and URL beyond the basic IAppointment requirements.
Definition
Namespace:Telerik.Maui.Controls.Scheduler
Assembly:Telerik.Maui.Controls.dll
Syntax:
public class Appointment : AppointmentBase, IAppointment, IDateRange, INotifyPropertyChanged, IEquatable<IAppointment>, ICopyable<IAppointment>, IExtendedAppointment
Inheritance: objectNotifyPropertyChangedBaseAppointmentBaseAppointment
Implements:
Inherited Members
Constructors
Appointment()
Initializes a new instance of the Appointment class with default values. The constructor automatically generates a unique identifier and sets up the appointment for immediate use.
Declaration
public Appointment()
Remarks
The constructor performs the following initialization:
- Generates a new GUID for the UniqueId property
- Sets default values for all properties (null for strings, current time zone for TimeZone if inherited)
- Prepares the object for property change notification
After construction, you should set at minimum the Start, End, and Subject properties before adding the appointment to a scheduler's AppointmentsSource collection.
Properties
Body
Gets or sets the detailed description or body content of the appointment. This property provides space for extended information beyond the basic subject line.
Declaration
public virtual string Body { get; set; }
Property Value
A string containing the appointment's detailed description, notes, or body text. Can be null or empty.
Remarks
The Body property is useful for:
- Meeting agendas and detailed descriptions
- Notes and reminders about the appointment
- Participant information or preparation requirements
- Additional context that doesn't fit in the subject line
This information is typically displayed in:
- Appointment detail dialogs
- Tooltip popups when hovering over appointments
- Expanded views of appointments
- Print layouts and reports
Location
Gets or sets the location where the appointment takes place. This can represent physical locations, virtual meeting rooms, or any venue information relevant to the appointment.
Declaration
public string Location { get; set; }
Property Value
A string containing the appointment's location information. Can be null or empty.
Remarks
The Location property supports various types of location information:
- Physical addresses: "123 Main St, New York, NY"
- Room names: "Conference Room A", "Building 2, Floor 3"
- Virtual locations: "Zoom Meeting", "Microsoft Teams"
- General areas: "Downtown Office", "Client Site"
Location information may be used for:
- Display in appointment tooltips and details
- Integration with mapping services
- Resource booking and conflict detection
- Travel time calculations between appointments
UniqueId
Gets or sets the unique identifier for this appointment instance. This property provides a consistent way to identify and track appointments across different operations and storage systems.
Declaration
public string UniqueId { get; set; }
Property Value
A string containing a unique identifier, typically a GUID. Automatically generated during construction.
Remarks
The UniqueId serves several important purposes:
- Database primary keys and foreign key relationships
- Synchronization between different systems or devices
- Tracking appointments through various operations (edit, delete, copy)
- Integration with external calendar systems
- Debugging and logging operations
The value is automatically generated as a new GUID when an appointment is created, ensuring uniqueness across all appointment instances. You can override this value if integrating with external systems that provide their own identifiers.
Url
Gets or sets a URL associated with the appointment. This property can store web links related to the appointment such as meeting URLs, document links, or reference materials.
Declaration
public string Url { get; set; }
Property Value
A string containing a URL or web link. Can be null or empty.
Remarks
The URL property supports various types of web links:
- Video conference links: Zoom, Teams, WebEx meeting URLs
- Document links: Shared documents, agendas, presentations
- Reference materials: Websites, articles, resources related to the appointment
- Integration links: Deep links to other applications or systems
Common use cases:
- Online meeting appointments with join URLs
- Training sessions with material links
- Appointments with associated documentation
- Integration with web-based applications
The URL can be used by the UI to provide clickable links or by integration code to launch external applications or browsers.
Methods
CopyFrom(IAppointment)
Deep copies all properties from other
to this Appointment.
Declaration
public override void CopyFrom(IAppointment other)
Parameters
other
The Appointment which properties are copied.
Overrides
Equals(IAppointment)
Indicates whether the current object is equal to another object of the same type.
Declaration
public override bool Equals(IAppointment other)
Parameters
other
Returns
Overrides
ToString()
Returns a string that represents this instance.