如何使用文本块进行导航?

时间:2015-05-15 07:49:05

标签: c# xaml

我是Windows dev't和C#的新手,如何让我在代码中发布的那些文本导航到另一个xaml页面?

由于

<StackPanel>    
    <TextBlock Text="contact us"
               TextWrapping="Wrap" 
               Style="{StaticResource PhoneTextExtraLargeStyle}"
               FontSize="{StaticResource PhoneFontSizeExtraLarge}"/>
    <TextBlock Text="help" 
               TextWrapping="Wrap"
               Style="{StaticResource PhoneTextExtraLargeStyle}"
               FontSize="{StaticResource PhoneFontSizeExtraLarge}"/>
</StackPanel>

1 个答案:

答案 0 :(得分:1)

有几种方法可以做到这一点。根据您的描述,一种方法是将an eventWindow.Show()方法相关联,以显示窗口。请参阅我在此提供的链接以获取一些示例和想法,但基本上您可以将其插入到TextBlock中,以便在您单击鼠标时使方法发生:

<TextBlock Text="contact us"
           TextWrapping="Wrap" 
           Style="{StaticResource PhoneTextExtraLargeStyle}"
           FontSize="{StaticResource PhoneFontSizeExtraLarge}"
           MouseUp="MethodToCallNameHere"/>

当您在XAML中编写此内容时,突出显示“MethodToCallNameHere”并按F12,它将自动在该Window的代码隐藏中插入一个方法。然后,您可以使用.Show()将新窗口放在那里。

例如,如果要显示一个AboutWindow类的新窗口(即,当您创建另一个XAML窗口时,将其命名为“AboutWindow”),则可以突出显示“MethodToCallNameHere”并按F12

然后,在代码隐藏中创建的方法中,您可以使其看起来像这样,在单击TextBlock时打开“AboutWindow”窗口:

    private void MethodToCallNameHere(object sender, System.Windows.Input.MouseButtonEventArgs e)
    {
        // instantiate the new Window's class
        AboutWindow aboutWindow = new AboutWindow();
        // call the .Show() method to show the new window
        aboutWindow.Show();
    }

我建议查看MS关于WPF应用程序here的在线(和免费)文档。这对我来说非常有帮助,因为我一直在学习。