• Silverlight页面切换方法


    初学Silverlight时,会遇到页面间切换问题,这里介绍一种方法供交流学习用:

    (1)、新建一个Silverlight应用程序.

    (2)、添加一个新的Silverlight用户控件,如PageSwitcher.xaml,将PageSwitcher.xaml文件中的Grid控件去掉,如下所示:

    1 <UserControl x:Class="SP.PageSwitcher"
    2 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    3 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    4  </UserControl>

    (3)、在PageSwitcher.xaml.cs文件中添加如下代码:

    代码
    1 public partial class PageSwitcher : UserControl
    2 {
    3 public PageSwitcher()
    4 {
    5 InitializeComponent();
    6 SwitchPage(new MainPage()); //MainPage是SL4.0中的默认起始页
    7   }
    8 /// <summary>
    9 /// 切换页面
    10 /// </summary>
    11 /// <param name="newPage">需要被切换到的页面</param>
    12   public void SwitchPage(UserControl newPage)
    13 {
    14 this.Content = newPage;
    15 }
    16 }

    (4)、接下来,我们修改App.xaml.cs中的Application_Startup方法,修改起始页面。

     

    private void Application_Startup(object sender, StartupEventArgs e)
    {
    this.RootVisual = new PageSwitcher();
    }

    (5)、这时可以添加新的页面,如LoginSuccess.xaml页面,在LoginSuccess.xaml文件中添加如下代码:

    代码
    1 <UserControl x:Class="SP.LoginSuccess"
    2 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    3 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    4 Width="400" Height="300">
    5 <Grid x:Name="LayoutRoot" Background="White">
    6 <TextBlock>
    7 跳转成功!
    8 </TextBlock>
    9 <Button x:Name="btnReturn" Content="返回" Click="btnReturn_Click" Height="20" Width="100" Margin="0,0,100,200"></Button>
    10 </Grid>
    11  </UserControl>

    主要是提示跳转成功,并可以点击按钮返回。

    LoginSuccess.xaml.cs文件如下:

    代码
    1 public partial class LoginSuccess : UserControl
    2 {
    3 public LoginSuccess()
    4 {
    5 InitializeComponent();
    6 }
    7
    8 private void btnReturn_Click(object sender, RoutedEventArgs e)
    9 {
    10 PageSwitcher pageSwitcher = this.Parent as PageSwitcher;
    11 pageSwitcher.SwitchPage(new MainPage());
    12 }
    13 }

    (6)、在MainPage.xaml文件中添加一个按钮,用于跳转到LoginSuccess.xaml页面。

     

    MainPage.xaml文件代码如下: 

    1 private void btnLogin_Click(object sender, RoutedEventArgs e)
    2 {
    3 Test test = this.Parent as Test;
    4 test.SwitchPage(new LoginSuccess());
    5 }

     MainPage.xaml.cs文件代码如下:

    代码
    1 <Grid x:Name="LayoutRoot" Background="Black">
    2 <Canvas>
    3 <Button x:Name="btnLogin" Content="登录" Click="btnLogin_Click" Width="100" Height="20"></Button>
    4 </Canvas>
    5
    6 </Grid>

    OK,完成~~~

  • 相关阅读:
    django orm中filter(条件1).filter(条件2)与filter(条件1,条件2)的区别 哈欠涟涟的日志 网易博客
    提示:ERROR 1044 (42000): Access denied for user
    取消选中的区域
    1.XML复习、HTML DOM 复习 2.simpleXML方式解析XML 3.XPath 4,MVC
    JSP的内置对象(session)
    每月自评之三:2013年3月
    HDU1405:The Last Practice
    一种Playfair密码变种加密方法如下:首先选择一个密钥单词(称为pair)(字母不重复,且都为小写字母),然后与字母表中其他字母一起填入至一个5x5的方阵中,填入方法如下:
    一个经典实用的 IPtables Shell 脚本
    static class 静态类
  • 原文地址:https://www.cnblogs.com/jiewei915/p/1777301.html
Copyright © 2020-2023  润新知