Warum wird [Windows::Foundation::Metadata::WebHostHidden] standardmäßig in benutzerdefinierten WinRT C++/CX-Steuerelementen hinzugefügt?

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

Frage

Wenn ich ein neues Steuerelement in einem WinRT C++/CX-Projekt erstelle, ist das Klassenattribut [Windows::Foundation::Metadata::WebHostHidden] wird standardmäßig von Visual Studio 2012 hinzugefügt.

Beispiel:

namespace WindowsRuntimeComponent1
{
    [Windows::Foundation::Metadata::WebHostHidden]
    public ref class MyUserControl sealed
    {
    public:
        MyUserControl();
    };
}
  • Gibt es dafür einen dokumentierten Grund?(Ich habe meine Hausaufgaben gemacht, aber ich habe diese Informationen nicht gefunden)
  • Soweit ich weiß, verwende ich das Attribut [WebHostHidden] macht die Klasse für WinRT HTML/JavaScript -Projekte unsichtbar.Bedeutet dies, dass ich in C ++/CX keine Kontrolle erstellen kann, die in JavaScript verwendet werden kann?
War es hilfreich?

Lösung

Soweit ich weiß, verwende ich das Attribut [WebHostHidden] Macht die Klasse für WinRT HTML/JavaScript-Projekte unsichtbar.

Das ist richtig:Dieses Attribut verbirgt den Typ in der JavaScript-Projektion, sodass es in JavaScript so aussieht, als ob der Typ nicht vorhanden wäre.

Bedeutet das, dass ich in C++/CX kein Steuerelement erstellen kann, das in JavaScript verwendet werden kann?

Sie können keine XAML-Steuerelemente aus JavaScript verwenden.Bei Verwendung von JavaScript wird die Benutzeroberfläche mit HTML und nicht mit XAML erstellt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top