Je suis nouveau au modèle de programmation WPF. J'ai quelques requêtes:WPF FrameworkElement
Est-ce que la page balise en XAML (dans une application XBAP) est de type
FrameworkElement
?Si j'ai un élément enfant, disons Cadre à l'intérieur d'une page. Je passe cet élément de cadre dans une fonction dans un autre assemblage. Maintenant, j'essaie de retourner à la page de la propriété Parent du contrôle Frame. Je ne suis pas capable d'obtenir une référence à la page? Des pensées?
La fonction que je me sers dans un autre assemblage pour la page parent du contrôle enfant
Page getTopParent(FrameworkElement f)
{
FrameworkElement ct = f;
while (true)
{
if (ct is Page)
{
break;
}
ct = (FrameworkElement)
ct.Parent;
}
return ct as Page;
}
Please find example XAML
</DataTrigger> < /DataTemplate.Triggers> ->
</TabControl.ItemTemplate>
<TabControl.ContentTemplate>
<DataTemplate>
<StackPanel HorizontalAlignment="Left">
<Frame Name="tabContent" Height="520" Width="820" local:WebBrowserBehavior.Source="{Binding Path=CurrentPage}" ContentRendered="tabItem_contentRendered"/>
</StackPanel>
</DataTemplate>
</TabControl.ContentTemplate>
</TabControl>
<StackPanel Orientation="Horizontal" Name="taskBar" Height="34" VerticalAlignment="Bottom">
<Button Height="23" Name="helpButton" Width="43" Content="Help" Click="helpButton_Click"/>
</StackPanel>
</StackPanel>
Merci pour la réponse. Page getTopParent (FrameworkElement f) {FrameworkElement ct = f; while (true) { si (ct est Page) { rupture; } ct = (FrameworkElement) ct.Parent; } renvoyer ct comme Page; } –
Merci, eh bien je viens de vérifier et je pense que ce n'est pas grave si je le passe dans le même assemblage ou un autre. Oui, mon élément Page contient des modèles de contrôle et de données? Est-il possible que je puisse obtenir la page parente même si j'ai des modèles dans ma page. –