我们知道,Win10引入了Universal Windows Platform,那么我们针对不同的平台该有不同的布局,此时我们就需要相对布局,就会用到RelativePanel这个控件。我们不再将控件写死,而是根据界面大小来进行控件布局。


首先我们先看一个小例子。

我们可以看到不论界面多大,刷新按钮始终保持在窗口的最中间。这就是相对布局。

接下来,我们看看xaml代码。

         <RelativePanel>
<Button RelativePanel.AlignHorizontalCenterWithPanel="True"
RelativePanel.AlignVerticalCenterWithPanel="True"
Content="刷新" FontFamily="Microsoft YaHei Light" />
</RelativePanel>

AlignHorizontalCenterWithPanel是让元素保持在窗口水平方向的中央,AlignVerticalCenterWithPanel是让元素保持在窗口竖直方向的最中央。


当然,不仅是元素与窗口之间的相对布局,还可以是元素与元素之间的。比如如下的例子。

我们可以看到不论界面大小,正方形始终处于圆形的右上方,接下来我们看看xaml代码。

        <RelativePanel>
<Ellipse Height="" Width="" Fill="LightBlue" Name="e1"
RelativePanel.AlignLeftWithPanel="True"
RelativePanel.AlignVerticalCenterWithPanel="True"/>
<Rectangle Height="" Width="" Fill="Black"
RelativePanel.RightOf="e1"
RelativePanel.AlignTopWith="e1"/>
</RelativePanel>

将Ellipse的Name设置为“e1”,将Rectangle的RightOf属性和AlignTopWith属性指向e1,我们可以知道例子中的Ellipse是相对于窗口布局的,Rectangle是相对于Ellipse元素布局的。

以上就是相对布局的简单介绍。

最新文章

  1. [LeetCode] Number of Islands 岛屿的数量
  2. 【POJ-1390】Blocks 区间DP
  3. 数学软件 之 基于MATLAB的DFP算法
  4. 浏览器-02 Chromium的多线程
  5. 客服端调用自定义宿主的WCF报错&quot;没有终结点在侦听可以接受消息的http://localhost:8085/mex。这通常是由于不正确的地址或者 SOAP 操作导致的错误&quot;的解决方案。
  6. flex安装时停在计算时间界面的解决办法
  7. mysql 清除数据库数据
  8. JDBC与javaBean
  9. 去除win8.1这台电脑中的6个库文件夹
  10. jsp filter登录限制过滤器
  11. 求知成瘾+逻辑成瘾+博识的无知,你中枪没?我感觉中枪了 - 外野 - Stage1st - Powered by Discuz!
  12. PHP 序列化与反序列化函数
  13. Codeforces 1037D【BFS】
  14. 数据库中DQL、DML、DDL、DCL的概念与区别
  15. 使用 Android 的日志工具LogCat
  16. HBase学习之路 (三)HBase集群Shell操作
  17. MQTT协议笔记之订阅
  18. day 09 课后作业
  19. vertical-align属性baseline(转)
  20. 程序员必备的代码审查(Code Review)清单

热门文章

  1. EF遇到的一些问题
  2. Java工作环境笔记
  3. UWP中重用C/C++代码时踩过的一些坑
  4. Javascript分号,加还是不加?
  5. Go语言的堆栈分析
  6. OData的初步认识
  7. Java学习笔记(04)
  8. fix orphaned user
  9. sizzle分析记录:属性选择器
  10. ASP.NET MVC5 网站开发实践(一) - 项目框架