Warum wird [Windows::Foundation::Metadata::WebHostHidden] standardmäßig in benutzerdefinierten WinRT C++/CX-Steuerelementen hinzugefügt?
-
13-12-2019 - |
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?
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.