2016-07-04 13 views
2

In App.xaml I Anwendungsressourcen wie mit einer Schaltfläche hinzugefügt haben:Keine installierten Komponenten wurden erkannt. Element ist bereits das Kind eines anderen Elements

<Application.Resources> 
    <Button x:Key="MyButton"/> 
</Application.Resources> 

In MainPage.xaml.cs habe ich versucht, diese Schaltfläche programatically in meinem Raster hinzuzufügen.

Button btn = (Button)Application.Current.Resources["MyButton"]; 
myGrid.Children.Add(btn); 

Aber es gibt Fehler wie folgt aus:

No installed components were detected. Element is already the child of another element.

In MainPage.xaml:

<Grid x:Name="myGrid" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 

</Grid> 

Ich weiß nicht, was ich falsch mache.

Danke.

Antwort

0

Sie können das Element, das bereits von einem anderen Element untergeordnet ist, nicht hinzufügen. Es ist, als ob dein Kind nicht das Kind eines anderen Mannes sein könnte.

+0

Das ist nicht unbedingt wahr. Siehe https://www.newscientist.com/article/2107219-exclusive-worlds-first-baby-born-with-new-3-parent-technique/ – Paymon

0

Diese Ausnahme wird normalerweise ausgelöst, wenn Sie mehr als eine Instanz des Steuerelements verwenden, das Sie in Ihren Anwendungsressourcen definiert haben. Wenn das der Fall ist, sollten Sie tun:

<Button x:Key="MyButton" x:Shared="false"/> 

EDIT: Es scheint WinRT x nicht unterstützt: Shared-Attribut.

Es gibt eine Abhilfe Control mit: http://www.gdomc.com/0428/binding-the-content-property-of-a-contentcontrol-in-winrt/

+0

Ich habe versucht, aber es gibt Fehler in app.xaml wie folgt: 'Syntaxfehler bei der XBF-Generierung gefunden –

Verwandte Themen