silverlight 乐动魔方 实战四

silverlight 乐动魔方 实战四,第1张

概述回到MainPage了, 开始想那个点击 PlayGame 按钮 ,跳转到另外一个页面。咋办? 哈,网上大牛确实多,翻开博客园,找到 ‘路过秋天’有个比较良好的解决方案。 1、首先,点击APP.xaml的后台.cs 查看。 要创建个全局容器,来进行页面转换。以下是APP.cs的源码,有注释的部份,都是要修改或者增加的,自己看着办吧···哈 using System;using System.C

回到MainPage了, 开始想那个点击 PlayGame 按钮 ,跳转到另外一个页面。咋办?

哈,网上大牛确实多,翻开博客园,找到 ‘路过秋天’有个比较良好的解决方案。

1、首先,点击APP.xaml的后台.cs 查看。

要创建个全局容器,来进行页面转换。以下是APP.cs的源码,有注释的部份,都是要修改或者增加的,自己看着办吧···哈

using System;using System.Collections.Generic;using System.linq;using System.Net;using System.windows;using System.windows.Controls;using System.windows.documents;using System.windows.input;using System.windows.Media;using System.windows.Media.Animation;using System.windows.Shapes;namespace SilverlightmusicHit{    public partial class App : Application    {        /// <summary>        /// 全局变量        /// </summary>        GrID root = new GrID();        public App()        {            this.Startup += this.Application_Startup;            this.Exit += this.Application_Exit;            this.UnhandledException += this.Application_UnhandledException;            InitializeComponent();        }        /// <summary>        /// 自定义转向        /// </summary>        /// <param name="ct"></param>        public voID RedirectTo(Control ct)        {            root.Children.Clear();            root.Children.Add(ct);        }        private voID Application_Startup(object sender,StartupEventArgs e)        {            //this.RootVisual = new MainPage();            this.RootVisual = root;            root.Children.Add(new MainPage());        }        private voID Application_Exit(object sender,EventArgs e)        {        }        private voID Application_UnhandledException(object sender,ApplicationUnhandledExceptionEventArgs e)        {            // 如果应用程序是在调试器外运行的,则使用浏览器的            // 异常机制报告该异常。在 IE 上,将在状态栏中用一个             // 黄色警报图标来显示该异常,而 firefox 则会显示一个脚本错误。            if (!System.Diagnostics.DeBUGger.IsAttached)            {                // 注意: 这使应用程序可以在已引发异常但尚未处理该异常的情况下                // 继续运行。                 // 对于生产应用程序,此错误处理应替换为向网站报告错误                // 并停止应用程序。                e.Handled = true;                Deployment.Current.dispatcher.BeginInvoke(delegate { ReportErrorTodoM(e); });            }        }        private voID ReportErrorTodoM(ApplicationUnhandledExceptionEventArgs e)        {            //try            //{            //    string errorMsg = e.ExceptionObject.Message + e.ExceptionObject.StackTrace;            //    errorMsg = errorMsg.Replace('"','\'').Replace("\r\n",@"\n");            //    System.windows.browser.HTMLPage.Window.Eval("throw new Error(\"Unhandled Error in Silverlight Application " + errorMsg + "\");");            //}            //catch (Exception)            //{            //}            try            {                string errorMsg = e.ExceptionObject.Message + e.ExceptionObject.StackTrace;                errorMsg = errorMsg.Replace('"',@"\n");                System.windows.browser.HTMLPage.Window.Alert("Error: " + errorMsg);            }            catch (Exception)            {            }        }    }}

好了,再回到MainPage

2、双击PlayGame按钮触发Click事件,打算跳转代码

        private voID btnStart_Click(object sender,RoutedEventArgs e)        {            ((App)(Application.Current)).RedirectTo(new Music());        }

 

再次检查一下MainPage.xaml

<UserControl x:Class="SilverlightmusicHit.MainPage"    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"    xmlns:d="http://schemas.microsoft.com/Expression/blend/2008"    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"    mc:Ignorable="d"    d:DesignHeight="600" d:DesignWIDth="800">    <UserControl.Resources>        <Style x:Key="buttonStyle1" targettype="button">            <Setter Property="Template">                <Setter.Value>                    <ControlTemplate targettype="button">                        <GrID>                            <visualstatemanager.VisualStateGroups>                                <VisualStateGroup x:name="CommonStates">                                    <VisualState x:name="normal">                                        <Storyboard>                                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.Targetname="contentPresenter">                                                <EasingDoubleKeyFrame KeyTime="0" Value="1"/>                                                <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0.75"/>                                                <EasingDoubleKeyFrame KeyTime="0:0:1" Value="0.5"/>                                                <EasingDoubleKeyFrame KeyTime="0:0:1.5" Value="0.25"/>                                                <EasingDoubleKeyFrame KeyTime="0:0:2" Value="0"/>                                                <EasingDoubleKeyFrame KeyTime="0:0:2.5" Value="0.25"/>                                                <EasingDoubleKeyFrame KeyTime="0:0:3" Value="0.5"/>                                                <EasingDoubleKeyFrame KeyTime="0:0:3.5" Value="0.75"/>                                                <EasingDoubleKeyFrame KeyTime="0:0:4" Value="1"/>                                            </DoubleAnimationUsingKeyFrames>                                        </Storyboard>                                    </VisualState>                                    <VisualState x:name="MouSEOver"/>                                    <VisualState x:name="pressed"/>                                    <VisualState x:name="Disabled"/>                                </VisualStateGroup>                            </visualstatemanager.VisualStateGroups>                            <ContentPresenter x:name="contentPresenter" OpacityMask="Black"/>                        </GrID>                    </ControlTemplate>                </Setter.Value>            </Setter>            <Setter Property="FontFamily" Value="Arial Black"/>            <Setter Property="FontSize" Value="48"/>            <Setter Property="Foreground">                <Setter.Value>                    <linearGradIEntBrush EndPoint="0.5,1" StartPoint="0.5,0">                        <GradIEntStop color="Black" Offset="0"/>                        <GradIEntStop color="White" Offset="1"/>                        <GradIEntStop color="#FF1D1D1D" Offset="0.116"/>                        <GradIEntStop color="#FF303030" Offset="0.191"/>                    </linearGradIEntBrush>                </Setter.Value>            </Setter>        </Style>    </UserControl.Resources>    <GrID x:name="LayoutRoot">        <GrID.ColumnDeFinitions>            <ColumnDeFinition WIDth="300"/>            <ColumnDeFinition WIDth="auto" />            <ColumnDeFinition WIDth="35*" />        </GrID.ColumnDeFinitions>        <GrID.Background>            <linearGradIEntBrush EndPoint="0.803,1.006" StartPoint="0.8,-0.006">                <GradIEntStop color="Black" Offset="0.584"/>                <GradIEntStop color="White" Offset="1"/>            </linearGradIEntBrush>        </GrID.Background>        <button Content="Hill@Home" GrID.Column="1" margin="-137,153" RendertransformOrigin="0.5,0.5" Style="{StaticResource buttonStyle1}" Height="72" VerticalAlignment="Bottom" HorizontalAlignment="left" WIDth="278"/>        <button GrID.Column="1" margin="-137,121" RendertransformOrigin="0.5,0.5" Style="{StaticResource buttonStyle1}" Height="72" VerticalAlignment="Bottom" HorizontalAlignment="left" WIDth="278" Content="Hill@Home" Opacity="0.1">            <button.Rendertransform>                <transformGroup>                    <Scaletransform ScaleY="-1"/>                    <Translatetransform Y="10"></Translatetransform>                </transformGroup>            </button.Rendertransform>        </button>        <button name="btnStart" Content="Play Game" GrID.Column="1" Height="69" HorizontalAlignment="left" margin="209,378,0"  VerticalAlignment="top" WIDth="256" FontFamily="Comic Sans MS" FontSize="26" Background="#FFE2C200" Foreground="#FF570000" Click="btnStart_Click" Opacity="0.5"></button>        <Canvas name="Hit" margin="267,226,64,239" WIDth="135" Height="135" GrID.Column="1"></Canvas>        <TextBlock name="txtBlog" Text="http://blog.csdn.net/cheng110110" Height="20" VerticalAlignment="Bottom" HorizontalAlignment="left" WIDth="300" />    </GrID></UserControl>

 

按F5,不行?呵呵···还有。

 

3、创建一个用户控件,命名Music。


大功告成了,,这篇是短了点。

不过那跳转方案可以慢慢琢磨一阵子的·····o(∩_∩)o 、

 

 

下次再见~~~

 

name:5+x

 

 

 

参考文章与书籍

 http://www.cnblogs.com/cyq1162/  博客园:路过秋天

WPF葵花宝典

总结

以上是内存溢出为你收集整理的silverlight 乐动魔方 实战四全部内容,希望文章能够帮你解决silverlight 乐动魔方 实战四所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1073745.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存