积极答复者
下面这两组代码如何使用?跪求大神。

问题
-
Grid app模板中现在想在这三张图片上实行过渡变换,一位高手给我提供了一段代码,说是可以实现进入下一个页面时背景图片可以逐渐显现。那么这两段代码又应该如何使用?应该放在哪里才正确呢?我不会使用;代码如下,求大神解答。
<Grid Style="{StaticResource LayoutRootStyle}" DataContext="{Binding Group}" d:DataContext="{Binding AllGroups[0], Source={d:DesignInstance Type=data:SampleDataSource, IsDesignTimeCreatable=True}}" Name="LayoutRoot" Loaded="LayoutRoot_Loaded"> <Grid.Resources> <Storyboard x:Name="fadeInStoryBoard"> <DoubleAnimation Storyboard.TargetName="LayoutRoot" Storyboard.TargetProperty="Opacity" From="0" To="1.0" Duration="0:0:10"/> </Storyboard> </Grid.Resources>
private void LayoutRoot_Loaded(object sender, RoutedEventArgs e) { ImageBrush image = new ImageBrush(); image.ImageSource = new BitmapImage(new Uri("ms-appx:///Assets/Logo.png")); LayoutRoot.Background = image; fadeInStoryBoard.Begin(); }
答案
-
恩,BitmapImage不能用是因为缺少了引用,所以你应该在CS文件最顶端加入这么一句:
using Windows.UI.Xaml.Media.Imaging;
如果以后同样遇到这样的问题,你可以到MSDN中查阅,比如说这次的BitmapImage,你可以查看http://msdn.microsoft.com/library/windows/apps/BR243235 这里,找到它所归属的类,在文件中引用即可。
--James
<THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
Thanks
MSDN Community Support
Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.- 已标记为答案 (C)sharp.sq 2013年12月15日 13:25
- 取消答案标记 (C)sharp.sq 2013年12月16日 9:34
- 已标记为答案 (C)sharp.sq 2013年12月16日 9:42
-
感谢您的回答,我将Anne Jing版主所列的两段代码成功放入。但是将后台CS代码放入GroupDetailPage.xaml.cs中后,出现了一个问题。下面是后台CS代码~~
private void LayoutRoot_Loaded(object sender, RoutedEventArgs e) { ImageBrush image = new ImageBrush(); image.ImageSource = new BitmapImage(new Uri("ms-appx:///Assets/Logo.png")); LayoutRoot.Background = image; fadeInStoryBoard.Begin(); }
放入后,会出现错误,是BitmapImage出了错,提示说“未能找到类型或命名空间名称“BitmapImage“(是否缺少using指令或程序集引用?)” 启动调试后,出现错误”未能找到类型或命名空间名称”BitmapImage“(是否缺少using指令或程序集引用?)”
如果删除image.ImageSource = new BitmapImage(new Uri("ms-appx:///Assets/Logo.png"));一行,即可成功启动调试,此时打开页面会出现所有文字,图片都以渐显的方式出现。但是背景会消失,一片黑。所以现在是渐显的效果实现了,但不是背景,而是主要内容。请问如何才能正确运行,并使背景渐显?请您给出指导!!!再次谢谢您!!!
- 已编辑 (C)sharp.sq 2013年12月15日 8:50
- 已标记为答案 (C)sharp.sq 2013年12月16日 9:42
全部回复
-
不是很明显了么,不知道你的疑问在哪里?一个在Grid中,一个在Grid的Loaded事件中,代码中都写的很明确了。
另外我建议同一个问题在同一个帖子中讨论,你的问题可以在另一个帖子中由Anne Jing版主继续跟进。
--James
<THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
Thanks
MSDN Community Support
Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later. -
我的疑问是无法正确放置两组代码,每次都放不对,很头疼。我就是着急,不然也不会再发一个帖子。我是个初学者,很多问题都不懂,而且都是自学,所以有点着急,请您见谅!!!!谢谢您!!!您能告诉我loaded事件在哪里吗?应该不是在GridDetailPage.xaml中吧,请您告诉我~~~谢谢!
- 已编辑 (C)sharp.sq 2013年12月14日 23:48
-
程序编写的时候一个是前台XAML,一个是后台CS代码,很明显loaded事件是需要在XAML中定义之后在后台CS中实现。
比如说Grid中有一行是
Loaded="LayoutRoot_Loaded"
表示在前台XAML中Grid元素中注册Loaded事件,然后再后台CS代码中详细写明Loaded事件中需要做什么。所以loaded事件的处理过程是放在CS文件中的。不知道你是否明白我的意思了?
--James
<THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
Thanks
MSDN Community Support
Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later. -
感谢您的回答,我将Anne Jing版主所列的两段代码成功放入。但是将后台CS代码放入GroupDetailPage.xaml.cs中后,出现了一个问题。下面是后台CS代码~~
private void LayoutRoot_Loaded(object sender, RoutedEventArgs e) { ImageBrush image = new ImageBrush(); image.ImageSource = new BitmapImage(new Uri("ms-appx:///Assets/Logo.png")); LayoutRoot.Background = image; fadeInStoryBoard.Begin(); }
放入后,会出现错误,是BitmapImage出了错,提示说“未能找到类型或命名空间名称“BitmapImage“(是否缺少using指令或程序集引用?)” 启动调试后,出现错误”未能找到类型或命名空间名称”BitmapImage“(是否缺少using指令或程序集引用?)”
如果删除image.ImageSource = new BitmapImage(new Uri("ms-appx:///Assets/Logo.png"));一行,即可成功启动调试,此时打开页面会出现所有文字,图片都以渐显的方式出现。但是背景会消失,一片黑。所以现在是渐显的效果实现了,但不是背景,而是主要内容。请问如何才能正确运行,并使背景渐显?请您给出指导!!!再次谢谢您!!!
- 已编辑 (C)sharp.sq 2013年12月15日 8:50
- 已标记为答案 (C)sharp.sq 2013年12月16日 9:42
-
恩,BitmapImage不能用是因为缺少了引用,所以你应该在CS文件最顶端加入这么一句:
using Windows.UI.Xaml.Media.Imaging;
如果以后同样遇到这样的问题,你可以到MSDN中查阅,比如说这次的BitmapImage,你可以查看http://msdn.microsoft.com/library/windows/apps/BR243235 这里,找到它所归属的类,在文件中引用即可。
--James
<THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
Thanks
MSDN Community Support
Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.- 已标记为答案 (C)sharp.sq 2013年12月15日 13:25
- 取消答案标记 (C)sharp.sq 2013年12月16日 9:34
- 已标记为答案 (C)sharp.sq 2013年12月16日 9:42