WPF初学(一)——布局【良好界面的基础】

由Winform转到WPF的一部分人,很可能忽略掉布局,习惯性的使用固定定位。然而,没有良好的布局,后面界面控件画的再好看,花哨,都不过是鲜花插在牛粪上,很可能始终都是一坨??(呵呵)。

闲话少说,首先说说WPF中最常用,其实功能也最强大的布局——Grid,很多时候,偶们只会注意到其最常用这一特点,而其之强大往往被忽略,其强大之处在于他可以替换到其他大部分布局面板,当然使用起来或许没有那些特种需求布局面板方便。

简例:Grid布局3行3列,行等分,列比例为1:2:3

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
        <RowDefinition Height="*"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="2*"/>
        <ColumnDefinition Width="3*"/>
    </Grid.ColumnDefinitions>
</Grid>

除了使用“*”来自适应,亦可以使用“auto”,两者的不同之处在于,*比例等分【对外】,auto根据内部控件自动调整大小【对内】。【,关于wpf有时界面模糊问题,有属性UseLayoutRounding,将其设为True——自己偶尔在一本书上看到的,叫布局舍入,遇到相同问题的同学,可以试试此法】

——相似布局面板UniformGrid布局【网格布局,用的偏少,有兴趣的童鞋可以玩玩】

 

布局使用排行老二的应该是StackPanel【个人用的比较多,别人偶就不知道啦】,其就是一个单方向的栈【经典的排队】。

简例:

<StackPanel>
    <Button Content="One" />
    <Button Content="Two" />
    <Button Content="Three" />
    <Button Content="Four" />
</StackPanel>

偶常常喜欢将另一个面板与其放到一块——WrapPanel流式布局,偶觉得他们就像TextBlock中的TextWrap属性一样,以是否可以换行加以区分,WrapPanel应该是学生最好理解的一个,毕竟每一个学生写作业,作文啥的一行一行写过来的【,做作业最那个疼啦】。

 

还有一个比较常用的布局面板就是DockPanel,做过Winform开发应该都知道Winform控件中经常有Dock属性,而这个布局就类似Winform的Dock属性。其就像是家里的一个房间,一些东西靠左边墙放,另一些东西靠右边。

 

既然决定用wpf,最需要放下的就是使用Canvas布局啦,当然他的存在毕竟还是有其意义的,不过偶好像木有发现。。。。

 

最后就是要提一下一个非布局面板的控件——Border,此控件可以说是不是布局面板的布局控件,经常和布局控件厮混在一起。如需要一个圆角边框就会使用Border套在一个布局面板外面。

WPF初学(一)——布局【良好界面的基础】

时间: 2024-10-15 15:49:30

WPF初学(一)——布局【良好界面的基础】的相关文章

WPF中Grid布局

WPF中Grid布局XMAl与后台更改,最普通的登录界面为例. <Grid Width="200" Height="100" > <!--定义了两列--> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto"/> <ColumnDefinition Width="100*"/> </Grid.Column

DIV+CSS网页布局常用的一些基础知识整理

CSS命名规范一.文件命名规范 全局样式:global.css:框架布局:layout.css:字体样式:font.css:链接样式:link.css:打印样式:print.css: 二.常用类/ID命名规范页 眉:header内 容:content容 器:container页 脚:footer 版 权:copyright 导 航:menu主导航:mainMenu子导航:subMenu 标 志:logo标 语:banner标 题:title侧边栏:sidebar 图 标:Icon注 释:note

将PC端的网站转化成手机端网站需要增加以下这段代码即可,再布局一下界面即可

<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" /> 将PC端的网站转化成手机端网站需要增加以下这段代码即可,再布局一下界面即可,布布扣,bubuko.com

WPF换肤之四:界面设计和代码设计分离

原文:WPF换肤之四:界面设计和代码设计分离 说起WPF来,除了总所周知的图形处理核心的变化外,和Winform比起来,还有一个巨大的变革,那就是真正意义上做到了界面设计和代码设计的分离.这样可以让美工和程序分开进行,而不是糅合在一块,这样做的好处当然也是显而易见的:提高了开发效率. 原先的设计方式 在我们之前设计的代码中,每当添加一个新的窗体的时候,我总是会在这个新的窗体的XAML文件中加入如下的代码,以便使样式能够应用上去: <Window x:Class="WpfApplicatio

WPF 初学 - Path

使用HttpClient进行网络处理的基本步骤如下: 1.通过get的方式获取到Response对象. CloseableHttpClient httpClient = HttpClients.createDefault(); HttpGet httpGet = new HttpGet("http://www.baidu.com/"); CloseableHttpResponse response = httpClient.execute(httpGet); 2.获取Response对

java实现简单的数据库的增删查改,并布局交互界面

一.系统简介 1.1.简介  本系统提供了学生信息管理中常见的基本功能,主要包括管理员.管理员的主要功能有对学生信息进行增加.删除.修改.查找等操作,对信息进行管理,对信息进行修改.查找等操作. 二.功能设计 2.1  需求分析 21世纪是信息化时代,信息化已更快捷更方便为目标来融入各行各业.学校也不例外.当前,我国的学校正在加紧实施信息化建设,其中学生信息管理是相对重要的 一部分. 目前,社会上信息管理系统发展飞快,各个企事业单位都引入了信息化管理软件来管理自己日益增长的各种信息,学生信息管理

JAVA 图形界面开发基础详解

/*文章中用到的代码只是一部分,需要源码的可通过邮箱联系我 [email protected]*/ 与C的win32一样,JAVA也有自己的图形界面开发,将在此篇博客中对基础部分进行讲解. 1.Java提供的图形界面类有哪些? Java提供了两套图形界面 (1)AWT组建(基础) AWT组件是jdk1.0的时候推出的图形界面类,它是位于java.awt包下的类.   当时在开发AWT组件时,采用的语言是C和C++,并且还调用了操作系统底层的绘图函数来实现AWT组件(我们看到的图形界面实际上画出来

WPF线段式布局的一种实现

线段式布局 有时候需要实现下面类型的布局方案,不知道有没有约定俗成的称呼,我个人强名为线段式布局.因为元素恰好放置在线段的端点上. 实现 WPF所有布局控件都直接或间接的继承自System.Windows.Controls. Panel,常用的布局控件有Canvas.DockPanel.Grid.StackPanel.WrapPanel,都不能直接满足这种使用场景.因此,我们不妨自己实现一个布局控件. 不难看出,该布局的特点是:最左侧朝右布局,最右侧朝左布局,中间点居中布局.因此,我们要做的就是

初学古琴入门需要掌握这些基础知识

"怎样学好古琴?"是一个很普通又很值得讨论的问题.这个问题在琴人范围内还可能存在着不尽相同的看法,莫衷一是,但古琴作为一种乐器,它和二胡.琵琶.钢琴.小提琴一样,学习进程是由浅人深.由易到难.由入门到深造,其规律与过程应该是一样的. 在操缦之初开指之时,习弹者应掌握好较为正确的演奏方法,懂得运指的基本原理.通过练习,理解并掌握其中的规则.习弹者可在教师的指导下仔细体会认真练习,使之方法正确,运力自如,音色圆润变化得当,姿势舒展大方.美观自然.其实讲究基本指法,运指的正确,是包括古琴在内