Pourquoi [Windows::Foundation::Metadata::WebHostHidden] est-il ajouté par défaut dans les contrôles WinRT C++/CX personnalisés ?

StackOverflow https://stackoverflow.com//questions/12713143

Question

Lorsque je crée un nouveau contrôle dans un projet WinRT C++/CX, l'attribut de classe [Windows::Foundation::Metadata::WebHostHidden] est ajouté par défaut par Visual Studio 2012.

Exemple:

namespace WindowsRuntimeComponent1
{
    [Windows::Foundation::Metadata::WebHostHidden]
    public ref class MyUserControl sealed
    {
    public:
        MyUserControl();
    };
}
  • Y a-t-il une raison documentée à cela ?(J'ai fait mes devoirs mais je n'ai pas trouvé cette information)
  • Autant que je sache, en utilisant l'attribut [WebHostHidden] Rend la classe invisible pour les projets WinRT HTML / JavaScript.Cela signifie-t-il que je ne peux pas créer de contrôle en C ++ / CX qui peut être utilisé dans JavaScript?
Était-ce utile?

La solution

Autant que je sache, en utilisant l'attribut [WebHostHidden] rend la classe invisible pour les projets WinRT HTML/JavaScript.

C'est correct:cet attribut masque le type dans la projection JavaScript, donc depuis JavaScript, c'est comme si le type n'existait pas.

Cela signifie-t-il que je ne peux pas créer un contrôle en C++/CX pouvant être utilisé en JavaScript ?

Vous ne pouvez pas utiliser les contrôles XAML à partir de JavaScript, point final.Lors de l’utilisation de JavaScript, l’interface utilisateur est créée en HTML et non en XAML.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top