前面我的一篇博客中已经讲到怎样在win8,win8.1应用中给button按钮添加背景图片,这里先回顾下,然后才可以获取这个背景图片的地址。
首先给Button加上背景图片:
(这里只写后台了,前台只要拉一个Button控件到视图中就行了,注意的是给它设置一个x:Name="btnBackImage"相当于HTML中的id)
var uri = "ms-appx:///Assets/Images/back.png"; Uri imgUri = new Uri(uri, UriKind.RelativeOrAbsolute); BitmapImage imgSource = new BitmapImage(imgUri); ImageBrush brush = new ImageBrush(); brush.ImageSource = imgSource; btnBackImage.Background = brush;
以上都做好了,基本上前台就有图片显示了。接下来就是取图片地址的问题了。
一开始关于添加按钮背景图片和显示图片背景我以为很简单的,认为就像ASP.NET里面的C#网站应用一样,按钮对象自动会有对应的url或者background属性设置的,其实这些属性直接写在win8,win8.1的程序里想获取图片或者设置图片一点反应都没有。
这个过程还是很麻烦的,相当于把之前你怎么把图片渲染,然后通过画刷获取图片的过程反过来弄:
Brush brush = btnBackImage.Background; ImageBrush imgBrush = (ImageBrush)brush; BitmapImage bitmap = (BitmapImage)imgBrush.ImageSource; var uri = bitmap.UriSource.AbsoluteUri;//这边有相对地址和绝对地址的属性选择 MessageDialog dialog = new MessageDialog(uri); dialog.ShowAsync();
其中关于MessageDialog的作用相当于弹出一个提示框,就是一个信息盒子。提示功能就相当于Javascript中的alert一样。
这里介绍一个VS的小常识:
我们写代码的时候总是有很多复制粘贴,
当我们要给多个写在一起的标签加同一个属性的时候,一行一行的粘贴是很麻烦的,那么能不能一下子粘贴过去呢?
其实是可以的,例如要给下面的li增加一个class属性,比如.li_style
<ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li> </ul>
我们只需要鼠标点击在第一个li的i字母后面,按住alt键不放,鼠标按住直接往下拖到最后一个li的i字母后面
这样你就会看到li后面就会有一条竖直的线,这时再粘贴 class="li_style"就可以了。这样就一下子对于四个li进行同时粘贴了,很方便。
win8,win8.1应用中怎样获取前台图片的相对地址或绝对地址和怎样在书写代码时的需要给多个标签进行粘贴同一个属性的捷径,布布扣,bubuko.com
win8,win8.1应用中怎样获取前台图片的相对地址或绝对地址和怎样在书写代码时的需要给多个标签进行粘贴同一个属性的捷径