FMX.Calendar.TCalendarModel
Delphi
TCalendarModel = class(TDataModel)
C++
class PASCALIMPLEMENTATION TCalendarModel : public Fmx::Controls::Model::TDataModel
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
class | public | FMX.Calendar.pas FMX.Calendar.hpp |
FMX.Calendar | FMX.Calendar |
Description
Modèles de données pour contrôles présentés.
FMX.Calendar.TCalendarModel hérite de FMX.Controls.Model.TDataModel. Tout le contenu en-dessous de cette ligne se réfère à FMX.Controls.Model.TDataModel.
Modèles de données pour contrôles présentés.
TDataModel est la classe de base des modèles de données pour les contrôles présentés. Les classes descendantes définissent des propriétés qui stockent des valeurs de données utilisées par les propriétés des contrôles présentés correspondants.
TDataModel étend TMessageSender, qui fournit la fonctionnalité d'envoi des messages. Un modèle de données peut définir un récepteur (ou une présentation) et envoyer des messages à ce récepteur, lorsque les données d'un modèle de données sont modifiées, de façon à mettre à jour les valeurs affichées dans le contrôle présenté associé. Lorsqu'un modèle de données lit ou écrit des valeurs de données, le modèle de données envoie des messages MM_GETDATA
et MM_DATA_CHANGED
à une présentation.
TDataModel définit la propriété DataSource contenant une collection de paires clé-valeur. Les clés sont des chaînes et les valeurs sont des instances de TValue. Comme le type TValue peut contenir et gérer tout type de données arbitraire, la collection DataSource peut contenir tout type de données requis. Cela signifie que pour conserver tout type de données, TDataModel n'a pas besoin de créer une nouvelle classe séparée. Elle peut par exemple contenir un tableau de chaînes, qui peut être utilisé comme collection de mots d'invite dans un éditeur. Comme cela :
type
TStringArray = TArray<string>;
var
ArrayList1, ArrayList2: TStringArray;
...
{ Setting/Getting value of array type }
ArrayList1 := ['Apple', 'ARC', 'Auto', 'Allday', 'Alltime'];
Edit1.Model.Data['array_value'] := TValue.From<TStringArray>(ArrayList1);
...
if Edit1.Model.Data['array_value'].IsType<TStringArray> then
ArrayList2 := Edit1.Model.Data['array_value'].AsType<TStringArray>;
Lorsque vous créez un modèle de données, vous devez transmettre un contrôle présenté au constructeur. Le contrôle de présentation spécifié possède le modèle.
Voir aussi
- FMX.Controls.Model.TDataModel.DataSource
- FMX.Controls.Model.TDataModel.Data
- System.Generics.Collections.TDictionary
- FMX.Controls.Presentation.TPresentedControl
- FMX.Presentation.Messages.TMessageSender.Receiver
- FMX.Controls.Presentation.TPresentedControl.Model
- FMX.Controls.Model.TDataModel.Owner
- System.String
- System.Rtti.TValue