The Intersoft.Crosslight assembly contains a set of core interfaces and classes that serve as the foundation of cross-platform apps development with Crosslight. This assembly mainly comprises of base components and services that will be referenced throughout all Crosslight projects including the shared and platform-specific projects. It provides the building block for application frameworks, data binding infrastructure, ViewModel infrastructure, commands, event aggregators, dependency containers, service providers, and a multitude of built-in mobile services.
If you're new to cross-platform mobile development with Crosslight, start with Getting Started with Crosslight.
To begin building right away, read Walkthrough: Creating Your First Crosslight Application.
To learn what's new in the latest Crosslight release, see Crosslight 2.0 Release Notes.
For more information about building cross-platform apps with Crosslight, please refer to the following topics:
Understanding Crosslight Architecture and Fundamentals
Understanding MVVM Pattern in Crosslight
Implementing Crosslight Application Service
Classes
Account | Represents an Account class that contains a set of claims or credentials which can be used in services that support authentication such as RestClient and authentication services. |
AccountStoreServiceBase | Provides base functionality and services for an account store. |
ActivatorService | Represents the default activator service. |
Address | Represents an address. |
AlwaysNewLifetime | A Lifetime Manager that always returns a new instance. |
ApplicationServiceBase | Represents the base application service class that conforms to IApplicationService interface which contains the state and context information of the application. In addition, the application service class manages the life cycle of a Crosslight application and allows developers to implement custom user interaction logic through the provided virtual methods. |
AuthenticateOptions | Represents possible options for authentication. |
AuthenticationContext | Represents an authentication context. |
AutoInitializeServicesAttribute | When defined on an assembly, the IServiceInitializer implementation in the assembly will be automatically called when the application starts. |
BackgroundEventSubscription<TPayload> | Extends EventSubscription<TPayload> to invoke the EventSubscription<TPayload> delegate in a background thread. |
BasicImageLoaderSettings | Represents the basic image loader settings. |
BindableAttribute | Specifies the bindable properties for a form, section, or component definition. |
BindableProperties | Provides definitions for common bindable properties. |
BindableProperty | Represents a bindable property. |
BindablePropertyMetadata | Represents the metadata used in a bindable property. |
BindingAdapterBase<T> | Represents the base class that serves as an adapter to connect an object with a bindable property. |
BindingAttribute | Specifies the binding properties and behaviors for a form, section or component definition. |
BindingContext | Represents the context of a BindingDescription. |
BindingDefinition | Represents the definition for data binding. |
BindingDescription | Represents information and metadata about a binding instance, such as the binding mode, path, source, and more. |
BindingManager | Provides binding management functionality such as adding, registering, and removing binding adapters. |
BindingProvider | Provides functionality to access to the instance's binding definitions. |
ButtonAttribute | Specifies the properties for button. |
CameraCaptureSettings | Provides settings applicable for camera capture. |
Colors | Represents a collection of predefined common colors. |
CommandActionAttribute | Specifies the command action attribute. |
CommandBindingAttribute | Specifies the command binding attribute. |
CommandManager | Provides functionality to manage commands. |
ComponentDefinitionBase | Provides base functionality for component definition. |
ComposeMailResult | Represents the compose mail result. |
Contact | Represents a contact. |
ContactPickerResult | Represents the contact picker result. |
ContainerLifetime | A lifetime manager that scopes the lifetime of created instances to the lifetime of the container. |
ContentControlAttribute | The base attribute for a content control implementation. |
Converter | Represents a generic converter class to convert an object from, or to specific type. |
DataChangedEvent<T> | Represents the data changed delegate event. |
DataChangedEventArgs | Provides arguments for data changed event. |
DataCollectionChangedEventArgs | Provides arguments for data collection changed event. |
DataEventArgs<TData> | Represents a generic class which passes a simple object to the event handlers. |
DataInsertedEvent<T> | Represents the data inserted delegate event. |
DataRemovedEvent<T> | Represents the data removed delegate event. |
DataViewAttribute | Represents the required properties and customizable attributes for data view editor type. |
DateTimeSerializationAttribute | Represents the date time serialization attribute. |
DefaultTypeResolverService | Represents the default type resolver service. |
DelegateCommand | Defines a command that implements ICommand which passes CanExecute and Executed as delegated method. The DelegateCommand is commonly used in M-V-VM pattern application development. |
DelegateCommand<T> | Defines a command that implements ICommand which passes CanExecute and Executed as delegated method. The DelegateCommand is commonly used in M-V-VM pattern application development. |
DelegateEvent<TPayload> | Defines a generic class that manages publication and subscription to events. |
DelegateEventBase | Represents the base class used to publish and subscribe to events. |
DelegateReference | Represents a reference to a System.Delegate that may contain a System.WeakReference to the target. |
DeserializationContext | Represents deserialization context. |
DetailViewModelBase<T> | Represents the base class for detail view model. |
DeviceInfo | Represents information about a device. |
DeviceToken | Represents device token model. |
DialogButtonStyle | Represents a dialog button style. |
DialogOptions | Represents the options applied to the IDialogPresenter. |
DialogResult | Represents the dialog result. |
DismissViewEventArgs | Provides arguments for dismiss view event. |
DisplayAttribute | Specifies the display properties and behaviors of a form component. |
DrawerViewModelBase | Represents the base class for drawer view model. |
EditableAttribute | Specifies the editable attribute for a component definiton. |
EditableDetailViewModelBase<T> | Represents the base class for editable detail view model base. |
EditableListViewModelBase<T> | Represents the base class for editable list view model. |
EditingParameter | Provides parameters for data editing. |
EditorAttribute | Specifies the properties and behaviors for an editor. |
EditorViewModelBase<T> | Represents the base class for editor view model. |
Represents an email. | |
EmptyLogger | Provides a mockup implementation of ILog. |
EmptyTracer | Provides a mockup implementation of ITracer |
EmptyViewModel | Represents an empty view model. For internal use only. |
EnabledBindingAttribute | Specifies the enabled binding attribute. |
EnumerableExtensions | Extensions for IEnumerable types. |
EventAggregator | Represents a class that serves as the hub/aggregator for events messaging. |
EventSource | Represents the base class for semantic logging. |
EventSource<T> | Represents the base class for semantic logging. |
EventSubscription<TPayload> | Provides a way to retrieve a System.Delegate to execute an action depending on the value of a second filter predicate that returns true if the action should execute. |
FormAttribute | Specifies the properties and behaviors of the form. |
FormBuilderServiceBase<T> | Represents the base class for form builder service. |
FormDefinition | Form definition. |
FormMetadataTypeAttribute | Specifies the type information for a form metadata. |
FrameworkModel | Represents an object that supports notification when its properties are changed. |
GroupItem<T> | Represents a generic group item. |
GroupListViewModelBase<TGroup, TItem> | Represents the base functionality for grouped list view model. |
Guard | Framework helper. |
ImageAttribute | Specifies the properties for image editor. |
ImageLoaderDelegate | Represents the delegate for image loader. |
ImageLoaderGlobalSettings | Represents the image loader global settings. |
ImageLoaderSettings | Represents the advanced image loader settings. |
ImagePickerActivateParameter | Represents the image picker activate parameter. |
ImagePickerAttribute | Specifies properties and behaviorsf or image picker. |
ImagePickerResultParameter | Reperesents the image picker result parameter. |
ImagePickerSettings | Represents the image picker settings. |
ImportBindingAttribute | Specifies the type of the binding provider which contains binding definitions that will be imported to the designated view context class, typically classes that implement IViewContext. |
IndexPath | Represents index and path information used in data presentation. |
InstantMessagingAccount | Represents the IM Account. |
IntersoftLicenseAttribute | Specifies the license data for Crosslight runtime application licensing. Place the entire XML content to the licenseData parameter, for example, [IntersoftLicense(@"{insert the XML license data here})] |
IocContainer | Represents the ClientUI built-in implementation of IDependencyContainer. This class implements the IDependencyRegistrar and IDependencyResolver, along with the IContainerFluent and IDisposable interfaces. The container is thread safe. |
ItemBindingDescription | Represents the binding description for items control such as list, table or collection view. |
ItemBindingDescriptionBase | Represents the binding description for items control such as list, table or collection view. |
IViewServiceExtensions | IViewService extensions. |
JsonSerializationOptions | Represents JSON serialization options. |
KeepAliveAttribute | Represents keep alive attribute. |
LayoutAttribute | Specifies layout-related properties and behaviors. |
ListViewAttribute | Represents the required properties and customizable attributes for list view editor type. |
ListViewModelBase<T> | Represents the base class for list view model base. |
LocalFileInfo | Provides information about a file entry. |
LocalizableNavigationItem | Represents a localizable navigation item which can be used in various Crosslight navigation patterns. |
LocalizationService | |
LocalNotification | Represents a local notification. |
Location | Represents a location. |
LocationAccuracy | Provides predefined values for location accuracy. |
LocationCoordinate | Represents a location coordinate. |
LocationRegion | Represents a location region. |
LocationResult | Represents the location result. |
LogService | Provides application logging service. |
MailAttachment | Represents a mail attachment. |
MailMessage | Mail message. |
MediaLibrarySettings | Provides settings for media library picker. |
MediaPickerResult | Represents the media picker result. |
MobileComponentServiceBase | Represents the base class for mobile component service. |
MobileService | Represents the default mobile service. |
MultiPageViewModelBase | Represents the base functionality for multi-page view model. |
NavigateActionAttribute | Specifies the properties and behaviors for navigation. |
NavigatedParameter | Represents the navigated parameter. |
NavigationItem | Represents the navigation item which can be used in various Crosslight navigation patterns. |
NavigationParameter | Represents the navigation parameter. |
NavigationResult | Represents the navigation result. |
NavigationSettingsAttribute | Specifies properties for navigation settings. |
NavigationTarget | Represents the navigation target. |
NavigationTargetExtensions | |
NonSerializableAttribute | Mark a member as non serializable. |
Note | Represents a note. |
Notification | Represents a generic notification. |
ObjectExtensions | Extensions for object. |
ObservableResource<T> | Represents an observable resource which automatically updates UI elements when the value of its resource has changed. |
Organization | Represents an organization. |
Phone | Represents a phone detail. |
PickerAttribute | Specifies the properties for picker control. |
Placemark | Represents a placemark. |
PlacemarkAddress | Represents a placemark address. |
PlacemarkResult | Represents the result of a placemark query. |
PlatformInfo | Represents platform information. |
PresenterService | Represents the default presenter service. |
ProductInfo | Provides information about the product. |
PropertyDefinition | Represents a property definition which can be added to SectionDefinition. |
RangeInputAttribute | Specifies properties for range input. |
ReachabilityEventArgs | Provides arguments for reachability event. |
ReachabilityResult | Represents the reachability result. |
RegisterNavigationAttribute | Specifies properties for navigation registration. |
Relationship | Represents the relationship of a contact. |
ReorderParameter | Represents the reorder parameter. |
ResourceCacheItem | Represents the resource cache item. |
RuntimeStyles | Represents runtime styles. |
SectionAttribute | Specifies properties for a form section. |
SectionDefinition | Represents a section definition which can be added to FormDefinition. |
SelectedItemBindingAttribute | Specifies the selected item binding attribute. |
SelectedItemsBindingAttribute | Specifies the selected items binding attribute. |
SelectedValueBindingAttribute | Specifies the selected value binding attribute. |
SelectionInputAttribute | Represents the required properties and customizable attributes related to the Selection editor type. |
SerializableAttribute | Marks a member as serializable. |
SerializationContext | Represents the serialization context. |
ServiceProvider | Represents the service provider where all Crosslight services are registered and provided. |
StartParameter | Provides parameters available during application start. |
StateAwareAttribute | Provides functionality to automatically save and restore state during certain application life cycle. |
StringInputAttribute | Defines properties for string/text input. |
StyleAttributes | Represents style properties. |
SubscriptionToken | Subscription token returned from DelegateEventBase on subscribe. |
SyncContext | Represents the context for Crosslight sync process. |
SyncInterval | Provides default values for synchronization intervals. |
TaskExtensions | Task extensions. |
ToastSettings | Represents toast settings. |
Tracer | Tracer class. For internal use only. |
TypeExtensions | Type extensions. |
ValidationResult | Represents the result of data validation. |
ViewModelBase | Provides common functionality for ViewModel classes. |
ViewModelBase<T> | Provides the base class for generic ViewModel classes. |
ViewModelBindingContext | Represents the context of a BindingDescription designated for ViewModel. |
ViewModelTypeAttribute | Specifies the view model type for this class. |
VisibilityBindingAttribute | Specifies the visibility binding attribute. |
WeakAction | Represents a weak action, which references an action while still allowing the owner of the action to be reclaimed by garbage collection. |
WeakAction<T> | Represents a generic weak action, which references an action while still allowing the owner of the action to be reclaimed by garbage collection. |
Website | Represents the website of a contact. |
Structures
Color | Represents a color. |
ToastDisplayDuration | Represents values for toast display duration. |
Interfaces
IAccount | Defines the members required for an account that can be used by authenticators. |
IAccountStoreService | Provides functionality for an account store service. |
IActionPresenter | Provides functionality to present an action choice to the view. |
IActionToastPresenter | Provides functionality to present an action toast presenter to the view. |
IActivatorService | Defines the members required to implement activator service. |
IActivityPresenter | Provides functionality to present an activity indicator to the view. |
IApplicationContext | Defines the members required to provide a context for an application. |
IApplicationEventSource | Defines the members that provide semantic logging for a Crosslight application. |
IApplicationHost | Defines the members required to host an application. |
IApplicationInitializer | Defines the members required to provide application initializer functionality. |
IApplicationService | Provides functionality to run a Crosslight application and manage its lifecycle. |
IAuthenticationContext | Defines the members required for an authentication context. |
IAuthenticationResult | Defines the result of an authentication process. |
IAuthenticationService | Provides functionality required for an authentication service. |
IAuthenticator | Provides functionality for an authenticator such as authenticating an IAccount and getting stored account. |
IAuthenticator<TAuthContext> | Provides functionality for an authenticator such as authenticating an IAccount and getting stored account. |
IBindingAdapter | Provides functionality to support bindable properties on an object. |
IBindingAdapter<T> | Provides functionality to support bindable properties for specified generic type. |
IBindingProvider | Provides functionality to access to the instance's binding definitions. |
IBrowserService | Defines a service that provides browser functionality. |
ICameraService | Defines a service that provides camera functionality. |
IChildViewModel | Defines the members to support child view model. |
ICommandBindingAdapter | Provides functionality required by a command adapter. |
IComponentView | Defines the members required to implement a component view. |
IComponentViewDelegate | Provides a way to delegate activation for a component view. |
IContactService | Defines a service that provides contact functionality. |
IContainerFluent | Defines the fluent interface that can be used to configure the container. |
IContainerView | Defines the members required to implement a container view. |
ICustomDeserializer | Provides a way to implement custom deserialization. |
ICustomSerializer | Provides a way to implement custom object serialization. |
IDataChangeTracker | Provides a way to track data changes. |
IDataValidation | Provides functionality to validate a data item. |
IDataValidationErrorManager | Provides functionality to clear errors that occur during data validation. |
IDelegateReference | Represents a reference to a System.Delegate. |
IDependencyContainer | Defines the members required to implement a dependency container. This is only a marker interface that represents the interface requirement of IDependencyRegistrar and IDependencyResolver. |
IDependencyRegistrar | Defines the methods used to manage Registration of functions or instances which will be used to resolve instances of specified types, either without or without a distinguishing name. |
IDependencyResolver | Defines the container members required to resolve instances by specified type and name. |
IDetailViewModel | Defines the members to support detail view model. |
IDetailViewModel<T> | Defines the members to support detail view model. |
IDialogPresenter | Provides functionality to present a dialog to the view, typically contains dialog buttons. |
IDrawerViewModel | Defines the members required to implement a drawer view model. |
IEditableListViewModel | Defines the members required to support editable list view model. |
IEditableListViewModel<T> | Defines the members required to support editable list view model. |
IEditorViewModel | Defines the members required to implement an editor view model. |
IEventAggregator | Defines the methods required in event aggregator implementation. |
IEventSource | Defines the members to provide an event source for semantic logging functionality. |
IEventSubscription | Defines the members to implement an event subscription. |
IFilteredSource | Provides functionality to perform filtering on a data source. |
IFormBuilderService | Defines the members required to implement form builder service. |
IGroupedSource | Provides functionality to access and manipulate grouped data source. |
IGroupItem | Defines the members required to implement a group item. |
IHashCryptographicService | Defines members required to implement hash cryptographic service. |
IImageLoaderContext | Provides a context for image loading process. |
IImageLoaderDelegate | Defines the delegate methods for image loader. |
IImageLoaderService | Defines a service that provides image loading functionality. |
IItemBindingAdapter | Provides functionality to support bindable properties on an object in a virtualized UI. |
ILifetimeManager | Defines the functionality for Lifetime Managers. Implementation should instantiate an instance store and use the Registration's Key property to index the data in the store. This allows one lifetime manager to service multiple Registrations. |
IListAccessor | Provides functionality to access and manipulate items list. |
IListViewModel | Defines the members required to implement a list view model. |
IListViewModel<T> | |
ILocalizationService | |
ILocalStorageService | Defines a service that provides local storage functionality. |
ILocationService | Defines a service that provides location and GPS functionality. |
ILog | Defines the members that provides common logging functionalities. |
ILogRepository | Defines the members to provide functionality for log repository. |
ILogService | Provides application and component logging service. |
IMailService | Defines a service that provides mail functionality. |
IMapService | Defines a service that provides mapping functionality. |
IMediaLibraryService | Defines a service that provides media library functionality. |
IMediaService | Defines a service that provides multimedia functionality. |
IMessagePresenter | Provides functionality to present a message to the view. |
IMessagingService | Defines a service that provides short text messaging functionality. |
IMobileComponent | Defines the members required to implement a mobile component. |
IMobileComponentService | Provides common functionality related to mobile components. |
IMobileService | Provides a common implementation for mobile service, including access to telephony, camera, location, and more. |
IMultiPageViewModel | Defines the members required to implement a multi page view model. |
IMultipleSelectionObserver | Provides a way to observe changes in multiple selection list. |
INavigable | Defines the members required to support navigation service in ViewModel. |
INavigationContext | Provides a way to determine the context of the navigation process. |
INavigationService | Defines the members required to implement a navigation service. |
INotificationService | Defines a service that provides notification functionality. |
INotifyApplicationStateChanged | Notifies when application state has changed. |
IObservableResource | Defines the properties and methods to support an observable resource implementation. |
IPopupControl | Provides functionality required by a popup control. |
IPresenter | Provides functionality to present a user interface. |
IPresenterService | Defines the members required to implement presenter service. |
IReachabilityService | Defines a service that provides reachability/connectivity functionality. |
IRegistration | Defines the members to support registering a type in the container. |
IResourceCacheService | Provides functionality to access and manage resource cache. |
IResourceCacheSession | Defines the members required to implement resource cache session. |
IResourceCacheSettings | Defines the resource cache settings. |
IResourceLoaderContext | Provides a context for resource loading process. |
IResourceLoaderDelegate | Defines the delegate methods for resource loader. |
IResourceLoaderProgress | Provides information about resource loading progress. |
IResourceLoaderService | Defines a service that provides resource loading functionality. |
IService | Marker interface for a service. Reserved for future's extensibility. |
IServiceAccessor | Provides a way to access the registered services. |
IServiceInitializer | Provides a way to initialize component services. |
ISocialService | Defines a service that provides social and sharing functionality. |
ISupportBackNavigation | Provides support for back navigation. |
ISupportCancellation | Provides support for cancelling an asynchronous or long-running process. |
ISupportIncrementalLoading | Provides support for incremental loading. |
ISupportItemBinding | Defines the members required to support item binding. |
ISupportLocalization | |
ISupportMobileService | Provides support for mobile services. |
ISupportRefresh | Provides support for data refresh. |
ISupportViewModel | Provides support for ViewModel design pattern. |
ISyncService | Defines the members needed to support native OS level synchronization. |
ITelephonyService | Defines a service that provides telephony functionality. |
IToastPresenter | Provides functionality to present a timed message that doesn't require user action such as notifications. |
ITracer | Defines members to provide log/tracing functionality. |
ITrackChanges | Provides a way to track changes in a data item. |
ITypeResolverService | Defines the members required to ipmlement type resolver service. |
IValueConverter | Provides a way to apply custom logic to a binding. |
IView | Defines the members required to implement a view. |
IViewBuilder | Provides functionality for a view builder. |
IViewContext | Provides functionality and context for a view. |
IViewModel | Defines the members required to implement ViewModel. |
IViewModelBinder | Defines the members required to implement a custom binder class that binds a ViewModel and Model to the view. |
IViewModelBinder<TViewModel, TModel> | Defines the members required to implement a custom binder class that binds a ViewModel and Model to the view. |
IViewModelInitializer | Defines the members to support view model initialization in early object's life cycle. |
IViewNotification | Provides a way to get notification for view dismissal. |
IViewService | Defines the members required to implement a view service. |
Delegates
ReachabilityChangesDelegate | Represents the reachability changes delegate. |
Enumerations
ActivityStyle | Specifies the activity style. |
AddressType | Specifies the address type. |
ApplicationState | Specifies the application state. |
AutoCorrectionType | Specifies the auto correction type. |
BindingDirection | Specifies the binding direction. |
BindingMode | Specifies the binding mode. |
BindingSourceType | Specifies the binding source type. |
BindingState | Specifies the binding state. |
ButtonStyle | Specifies the button style. |
CacheExpirationPolicy | Specifies the cache expiration policy. |
CameraCaptureMode | Specifies the camera capture mode. |
CameraDeviceKind | Specifies the camera device kind. |
CameraFlashMode | Specifies the camera flash mode. |
CameraMediaType | Specifies the camera media type. |
ClearButtonVisibility | Specifies the clear button visibility. |
CommandItemType | Specifies the system command item type. |
ComponentType | Specifies the component type. |
CustomEditorSource | Specifies the custom editor source. |
DateInputMode | Specifies the date input mode. |
DateTimeInterval | Represents the date time interval. |
DeviceKind | Specifies the device kind. |
DialogButton | Specifies the type of the dialog button. |
DrawerSide | Specifies the drawer side mode. |
EditAction | Specifies the edit action. |
EditorType | Specifies the editor type. |
EmailType | Specifies the email type. |
FileWriteMode | Specifies the file write mode. |
FormBindableProperty | Specifies the form bindable property. |
FormState | Specifies the form state. |
HashAlgorithmKind | Specifies the hash algorithm kind. |
ImageResultMode | Specifies the image result mode. |
ImageScaleMode | Specifies the image scaling mode. |
InputType | Specifies the input type. |
InstantMessagingService | Specifies the IM service. |
LayoutAlignment | Specifies the layout alignment. |
LayoutStyle | Specifies the layout style. |
ListViewCellStyle | Specifies the list view cell style. |
ListViewInteractionMode | Specifies the list view interaction mode. |
LocalFolderKind | Specifies the local folder kind. |
MailComposeStatus | Specifies the nail compose status. |
MapDirectionMode | Specifies the map direction mode. |
MediaLibraryType | Specifies the media library type. |
ModalPresentationStyle | Specifies the modal presentation style. |
ModalTransitionStyle | Specifies the modal transition style. |
NavigationMode | Specifies the navigation mode. |
NavigationResultAction | Specifies the navigation result action. |
NavigationTargetKind | Specifies the navigation target kind. |
NetworkConnectionStatus | Represents the network connection status of the device. |
NetworkConnectionType | Specifies the network connection type. |
NotificationType | Specifies the notification type. |
OrganizationType | Specifies the organization type. |
OSKind | Specifies the operating system kind of a device. |
PhoneType | Specifies the phone type. |
PickerStyle | Specifies the picker style applicable for picker editor. |
PopupCloseAction | Specifies the popup close action. |
ReachabilityStatus | Represents the reachability status of a given resource. |
RelationshipType | Specifies the relationship type. |
ReorderAction | Specifies the reorder action. |
ResourceCacheMode | Specifies the cache mode for resources after they are downloaded. |
ReturnKeyType | Specifies the return key type. |
SectionLayoutStyle | Specifies the section layout style. |
SelectionMode | Specifies the selection mode. |
ShareActivityType | Specifies the share activity type. |
StateRestorationOrder | Specifies the state restoration order. |
SubscribeOptions | Specifies the options used in Subscribe methods in an event aggregator. |
TargetBindingType | Specifies the target binding type. |
TextAlignment | Specifies the text alignment mode. |
TintColorMode | Specifies the tint color mode. |
ToastAppearance | Specifies the toast appearance. |
ToastGravity | Specifies the toast gravity. |
UpdateSourceTrigger | Specifies the update source trigger. |