首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WPF FrameworkElement

WPF FrameworkElement
EN

Stack Overflow用户
提问于 2009-03-04 12:05:32
回答 2查看 4.8K关注 0票数 0

我是新的WPF编程模型。我没有什么疑问:

  1. XAML中的页面标记(在XBAP应用程序中)是FrameworkElement类型吗?
  2. 如果我有一个子元素,让我们说帧在一个页面中。我在另一个程序集中的函数中传递这个框架元素。现在我尝试从框架控件的父属性导航回Page,我无法获得对Page的引用?有什么想法吗?

在另一个程序集中用于获取子控件的父页的函数

代码语言:javascript
复制
Page getTopParent(FrameworkElement f) 
{ 
    FrameworkElement ct = f; 

    while (true) 
    { 
        if (ct is Page) 
        { 
            break; 
        } 

        ct = (FrameworkElement)
        ct.Parent; 
    } 
    return ct as Page; 
}
代码语言:javascript
复制
Please find example XAML
代码语言:javascript
复制
                                                                                                                                                                                                                                        </DataTrigger>                     </DataTemplate.Triggers>-->                 
代码语言:javascript
复制
        </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>

EN

回答 2

Stack Overflow用户

发布于 2009-03-04 12:17:14

  1. 是的,Page是从FrameworkElement继承来的。
  2. 有时候,爬树并不像简单地检查父树那样简单,尤其是在使用模板的情况下。如果您使用的是模板,则需要使用Parent属性向上树,直到它为null为止。然后,使用TemplatedParent属性。您可以使用这两种方法的组合走上逻辑树。尽管如此,WPF为这个场景提供了帮助方法。看看LogicalTreeHelper.GetParent
票数 1
EN

Stack Overflow用户

发布于 2009-03-04 12:16:41

  1. 是的,就像XAML里的其他东西一样。使用这里获取正式文档。
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/610271

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档