查找UWP段的父项

底纹

我想找到名称为“ ParagraphOne”的段落的父级(因此RichTextBlock的名称为“ RichTextOne”),但是代码会生成异常。

例外

Xml:

 <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <Grid VerticalAlignment="Center" HorizontalAlignment="Center">
        <StackPanel>
            <RichTextBlock x:Name="RichTextOne" Margin="30">
                <Paragraph x:Name="ParagraphOne">
                    <Run Text="This is a Text"/>
                </Paragraph>
            </RichTextBlock>
            <Button x:Name="btnParent" Click="btnParent_Click" Margin="30" Width="100" Height="32" Content="Find Parent"/>
        </StackPanel>
    </Grid>
</Grid>

码:

public sealed partial class MainPage : Page
{
    public MainPage()
    {
        this.InitializeComponent();
    }

    private async void btnParent_Click(object sender, RoutedEventArgs e)
    {
        var parent = VisualTreeHelper.GetParent(ParagraphOne) as UIElement;
        string pName = (parent as RichTextBlock).Name;
        var messageDialog = new MessageDialog("The name of parent is: " + pName);
        await messageDialog.ShowAsync();
    }
}

办法吗 提前致谢!

生成的错误是:无法修复的错误(HRESULT的异常:0x8000FFFF(E_UNEXPECTED))

米尔托

这应该工作:

RichTextBlock parent = ParagraphOne.ElementStart.Parent as RichTextBlock;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章