这几天都在用blend拖拽界面.我想要的效果是

放大后出现的效果是

但实际出来的效果是放大以后能看到所有的控件,缩小以后窗体就把控件个遮住了.怎么办?

在WPF中提供了9种布局方式,具体Grid,Canvas,StackPanel。。。记不住针对不同的界面实际用到的布局也是不同的,所谓的设计就是视情况而定

比方说上面的例子,自己从直接往上面托控件,然后手动去对齐。眼睛都成对眼儿了效果还是不令人满意,但如果是窗体固定大小不然其变动。这样的方式完全能满足需求,一个一个去对齐也恼火。

然后我把外面的Layoutroot (实际上也是一个grid)拆分成9行。如下图

然后再2B的在每一行中加入一个grid

然后再在每个grid下面2B的分3列。

然后把3个控件放在1,2列。然后设置控件的宽度(因为下面的lable的字符长度不一),设置控件的水平位置,垂直位置。设置margin为0。

这样下来基本能达到窗体放大,元素的跟着放大。间距也放大缩小。。

总结一下:之所以说是2B的做法,是因为不需要那么多的grid,刚开始的时候只需要分3行,然后第一行放一个grid分6行3列。这样只需要控制控件的在grid中的位置。设置控件的水平垂直对齐方式就ok了。

WPF Blend Grid 布局的更多相关文章

  1. WPF中Grid布局

    WPF中Grid布局XMAl与后台更改,最普通的登录界面为例. <Grid Width="200" Height="100" > <!--定义 ...

  2. wpf初步-grid布局-连连看棋盘

    private void Window_Loaded_1(object sender, RoutedEventArgs e) { //Button btn1 = new Button(); //btn ...

  3. [WPF] 使用Grid与GridSplitter排版布局

    原文:[WPF] 使用Grid与GridSplitter排版布局 前言 在開發應用程式時,一個很重要的工作項目就是設計使用者介面的排版布局.WPF中所提供的Grid控制項,讓開發人員擁有將版面分割為欄 ...

  4. WPF/UWP 的 Grid 布局竟然有 Bug,还不止一个!了解 Grid 中那些未定义的布局规则

    只要你用 XAML 写代码,我敢打赌你一定用各种方式使(nuè)用(dài)过 Grid.不知你有没有在此过程中看到过 Grid 那些匪夷所思的布局结果呢? 本文将带你来看看 Grid 布局中的 Bu ...

  5. wpf后置代码中的Grid布局以及图片路径的设置

    之前用Grid练习连连看布局时,遇到了几个困惑.此次就把当时的一些收获写出来,供以后翻看. 图片路径可能比较常用,所以就写在第一个了. 在xaml中,设置图片非常简单,只要把图片拷贝到资源目录(这里假 ...

  6. 三、WPF入门教程——布局和常用Panel学习

    布局和常用Panel学习 一.简介 所有的WPF布局容器都派生自System.Windows.Controls.Panel.Panel继承自FrameworkElement. 在Panel中有一个比较 ...

  7. 3、WPF学习之-布局

    一.基础知识 1.所有WPF布局容器都派生自System.Windows.Controls.Panel抽象类的面板: 2.WPF种核心布局面板有StackPanel(栈面板).WrapPanel(环绕 ...

  8. [转]使用CSS3 Grid布局实现内容优先

    使用CSS3 Grid布局实现内容优先  http://www.w3cplus.com/css3/css3-grid-layout-module.html 本文由大漠根据Rachel Andrew的& ...

  9. css grid布局的首次使用

    首先来看一下效果图 接下来废话不多说,先上代码 <!DOCTYPE html> <html lang="en"> <head> <meta ...

随机推荐

  1. TCP 基础知识

    参考 朱小厮-一文详解TCP 博客园-"三次握手,四次挥手"你真的懂吗? 博客园-深度解密HTTP通信细节

  2. [BZOJ2298]problem a

    Description 一次考试共有n个人参加,第i个人说:“有ai个人分数比我高,bi个人分数比我低.”问最少有几个人没有说真话(可能有相同的分数) Input 第一行一个整数n,接下来n行每行两个 ...

  3. Entity Framework框架 (二)

    一.前面一篇EF的介绍主要是通过linq语句,本篇主要是介绍一下不通过linq语句如何去操作EF执行查询sql语句与执行存储过程. 1.  其中的Acccout是输出参数对应的类.比如输出参数有三个值 ...

  4. xml.libxml2_添加带tagname的xml文本(xmlNewTextChild)

    1. 2.例子代码: int TgText::NodeNew_G2SVG(xmlNode* _pNodeCurrent_G, xmlNode* _pNodeParent_SVG, xmlNode** ...

  5. 使用echarts时option可以复用的方法

    其实复用option很简单,在所要展示的图形在其他需求大致一致时,即可写一个option然后设置不同的地方就好了,坐标轴.series等都可以设置,具体代码如下: var barLeft = echa ...

  6. 第 8 章 容器网络 - 062 - 如何使用 flannel host-gw backend?

    flannel host-gw backend flannel 支持多种 backend:(1)vxlan backend:(2)host-gw: 与 vxlan 不同,host-gw 不会封装数据包 ...

  7. blob对象的应用

    demo:https://pan.baidu.com/s/1hsq2vgK 最近在学习blob,利用blob编写了两个业务场景,详情请下载demo查看 1:大文件分片下载,服务器端使用.net接收客户 ...

  8. 19、Squid代理服务器

    第十九章,配置Squid服务器 一.代理服务器简介 19.1.1:什么是代理服务器 代理服务器的功能就是代理网络用户去取的网络信息,好比是网络信息的中转站,大多被用来连接互联网和局域网.代理服务器好像 ...

  9. EL函数库及用法

    导入标签库: <%@ tablib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%&g ...

  10. 【JS】【6】判断一个元素是否在数组中

    摘要: 有三种方式: 1,jquery的inArray方法 2,数组的indexOf方法 3,普通的for循环方法 正文: 1,jquery的inArray方法 /** * @param {Objec ...