BindProperty function(get_lambda, set_lambda)(dbgmodel.h)
Classeur qui convertit deux lambdas en accesseur de propriété en lecture/écriture. Les lambdas doivent contenir des références sur les objets externes qu’ils référencent via une capture par valeur.
Utilisation : BindProperty(get_lambda, set_lambda)
Syntaxe
Microsoft::WRL::ComPtr<IModelPropertyAccessor> BindProperty(
const TGet & getFunctor,
const TSet & setFunctor
);
Paramètres
getFunctor
Un foncteur de signature (PCWSTR, IModelObject *, IModelObject **) qui fera office de getter pour l’accesseur de propriété nouvellement créé.
setFunctor
Un foncteur de signature (PCWSTR, IModelObject *, IModelObject *) qui servira de setter pour l’accesseur de propriété nouvellement créé.
Valeur retournée
Cette fonction retourne Microsoft ::WRL ::ComPtr<IModelPropertyAccessor>.
Remarques
Cet exemple de code montre l’utilisation.
// Define a native type that we wish to project into the data model
struct MyNativeType
{
std::wstring Name;
int Id;
int WriteableValue;
};
// Declare a type factory for the type
class MyNativeTypeFactory : public TypedInstanceModel<MyNativeType>
{
public:
MyNativeTypeFactory()
{
BindReadOnlyProperty(L"Name", &MyNativeType::Name);
BindReadOnlyProperty(L"Id", &MyNativeType::Id);
BindProperty(L"WriteableValue", &MyNativeType::WriteableValue);
}
};
// Create the type factory and make an instance
MyNativeTypeFactory factory;
Object instance = factory.CreateInstance(MyNativeType { L"Foo", 42, 37 });
// There are "Name/Id" read-only properties on instance and a "WriteableValue" property.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | dbgmodel.h |