【转】wpf从我炫系列1----布局控件的使用(上)

今天我来给大家讲解在学习WPF过程中使用布局控件的一些心得,主要给大家介绍一下一个控件的用法。希望对大家学习Wpf有所帮助.

1.       StackPanel栈面板

2.       WrapPanel环绕面板

3.       DockPanel停靠面板

4.       Grid网格

5.       UniformGrid均布网格

6.       Canvas画布

 

1.       StackPanel栈面板

栈面板是WPF中最简单的面板,用来在小范围内布局效果非常好。将它包含的元素按一行或者一列进行排列.StackPanel内的元素不会换行。如果stackPanel内没有足够的空间,它内部的元素超过了它所容纳的范围时,内部元素将被截取。

通过设置Orientation属性为Horizontal, Vertical

可以使stackpanel内部的元素水平或垂直排列,关于这点用户可以自己试验

效果图如下:

 

代码

  <Window x:Class="WpfPanel.MainWindow"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        Title="MainWindow" Height="367" Width="505">

    <Grid>

        <StackPanel  Margin="0" Name="stackPanel1" Orientation="Vertical">

            <Button Content="Button"  Name="button1" />

            <Button Content="Button"  Name="button2" />

            <Button Content="Button"  Name="button3"  />

            <Button Content="Button" Name="button4" />

            <Button Content="Button"  Name="button5" />

        </StackPanel>

    </Grid>

</Window>

.

 

通过设置stackpanel内部控件的VerticalAlignment属性,可以设置其内部控件的排列方式。

StackPanel属性为Orientation="Horizontal",可以设置内部控件的VerticalAlignment来设置其对齐方式

StackPanel属性为Orientation=" Vertical ",可以设置内部控件的HorizontalAlignment来设置其对齐方式

效果图

 

 

代码

<Window x:Class="WpfPanel.MainWindow"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        Title="MainWindow" Height="367" Width="505">

    <Grid>

        <StackPanel  Margin="0" Name="stackPanel1" Orientation="Horizontal">

            <Button Content="Button1"  Name="button1" VerticalAlignment="Top" />

            <Button Content="Button2"  Name="button2"  VerticalAlignment="Bottom"/>

            <Button Content="Button3"  Name="button3" VerticalAlignment="Center"  />

            <Button Content="Button4" Name="button4" VerticalAlignment="Stretch" />

            <Button Content="Button5"  Name="button5" VerticalAlignment="Top" />

        </StackPanel>

    </Grid>

</Window>

2.        WrapPanel环绕面板

Wrappanel面板的使用和stackpanel面板一样,但是如果wrappanel面板内部没有足够的空间,其子元素超出了其内部可容纳的宽度,可以换行显示.

效果图:

 

代码

<Window x:Class="WpfPanel.wrappanelOne"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        Title="wrappanelOne" Height="300" Width="300">

    <Grid>

        <WrapPanel Height="100" HorizontalAlignment="Left" Margin="30,82,0,0" Name="wrapPanel1" VerticalAlignment="Top">

            <Button Content="Button" Height="23" Name="button1" Width="75" />

            <Button Content="Button" Height="23" Name="button2" Width="75" />

            <Button Content="Button" Height="23" Name="button3" Width="75" />

            <Button Content="Button" Height="23" Name="button4" Width="75" />

        </WrapPanel>

    </Grid>

</Window>

3.        Dockpanel布局面板

Dockpanel面板主要用来拉伸其内部控件并使控件停靠在内部的某个位置,主要用来做整体布局设计使用。

Dockpanel提供了四个属性,用来设置其内部控件布局

Left:位于DOCKPANEL左侧的子元素

Top:位于DOCKPANEL顶部的子元素

Right:位于DOCKPANEL右侧的子元素

BUTTON:位于DOCKPANLE底部的子元素.

效果图

 

代码

<Window x:Class="WpfPanel.dockpanelOne"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        Title="dockpanelOne" Height="300" Width="300">

    <Grid>

        <DockPanel  Name="dockPanel1">

            <Button Content="£¤?"  Name="button1" DockPanel.Dock="Top"/>

            <Button Content="Á¨®¨¤" Name="button2" DockPanel.Dock="Left"/>

            <Button Content="®¨°¨¤"  Name="button3"  DockPanel.Dock="Right" />

            <Button Content="Ì¡Á?" Height="23" Name="button4" DockPanel.Dock="Bottom" />

            <Button Content="º¡ê®¨¤??"  Name="button5"/>

        </DockPanel>

    </Grid>

</Window>

 

如果将DOCKPANELLastChildFill="False",则最后一个子元素不会占满剩余空间,默认情况下为true

效果图

 

代码

 

<Window x:Class="WpfPanel.dockpanelOne"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        Title="dockpanelOne" Height="300" Width="300">

    <Grid>

        <DockPanel  Name="dockPanel1" LastChildFill="False">

            <Button Content="£¤?"  Name="button1" DockPanel.Dock="Top"/>

            <Button Content="Á¨®¨¤" Name="button2" DockPanel.Dock="Left"/>

            <Button Content="®¨°¨¤"  Name="button3"  DockPanel.Dock="Right" />

            <Button Content="Ì¡Á?" Height="23" Name="button4" DockPanel.Dock="Bottom" />

            <Button Content="º¡ê®¨¤??"  Name="button5"/>

        </DockPanel>

    </Grid>

</Window>

当然,你可以设置其内部的元素的HorizontalAlignmentVerticalAlignment属性来具体设置其内部排列方式,读者可以自己试验

 

 

demo下载:http://download.csdn.net/source/2474542

在下 一节中我们将为大家讲解其他控件的用法

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/436943.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

idea中project sdk_一文秒懂IDEA中每天都在用的Project Structure知识

Idea这款开发工具的便利之一是很多配置项几乎可直接使用默认项。但针对不同的项目难免需要针对性的配置&#xff0c;本文带大家详细的梳理一遍Project Structure中各项功能&#xff0c;注意收藏&#xff0c;以备不时之需。先说一下写本文的缘由&#xff0c;在项目中用Idea中打开…

【开源项目】EasyCmd命令图形化软件

EasyCmd 项目地址&#xff1a;https://gitee.com/showmework/EasyCmd 最新版本&#xff1a;v0.2预览版 介绍 命令行图形化。 让命令行更易于使用&#xff0c;从命令行复杂的参数及语法中解放出来。 设计思想 软件设计思想并不是构建用户界面&#xff0c;现代操作系统已经…

php在线读取pdf文件大小_PDF转WORD在线转换器哪家强?

无论是工作还是日常生活中&#xff0c;经常需要将pdf转换成word文档进行编辑&#xff0c;我想大部分人一定是和我一样&#xff0c;首先会去找度娘帮忙&#xff0c;百度一下“pdf转word”出现了很多在线转换器&#xff0c;比如大家常用的讯捷、smallpdf等&#xff0c;然后立马进…

【转】wpf从我炫系列2----布局控件的使用(下)

4. GRID控件 Grid控件可以是说是wpf中功能最强大和使用最多的控件。它有点类似于HMTL网页布局中的表格&#xff0c;可以自定义行列显示&#xff0c;并可以合并某些行和列. 使用<Grid.RowDefinitions>可以定义GRID中的行数&#xff0c; 使用<Grid.ColumnDefi…

ios开发问题汇总(一)

教程汇总 IOS比较好的网络教程&#xff1a;IOS编程浅蓝教程IOS编程教程&#xff08;五&#xff09;自定义UITableView的表单元格菜鸟教程-iOS教程 开发问题 实现页面切换&#xff0c;网上某些文章写的是&#xff1a; [self.navigationController performSegueWithIdentifie…

oracle 建分区索引_Oracle分区表及分区索引-创建list分区

Oracle分区表及分区索引-创建list分区创建list分区的语法如上&#xff0c;需要我们指定的:lcolumn:分区依赖列(注意&#xff1a;只能是一个);lpartition:分区名称;lliteral:分区对应值(注意&#xff1a;每个分区可以对应多个值);l tablespace_clause:分区的存储属性&#xff0c…

【转】WPF从我炫系列3---内容控件的用法

今天我来给大家讲解WPF中内容控件的用法&#xff0c;在WPF中的内容控件&#xff0c;通俗的讲&#xff0c;是指具有Content属性的控件&#xff0c;在content属性里面可以嵌套放置任意其他类型的控件&#xff0c;但是Content只能接受单个元素&#xff0c;可以通过布局控件来组合放…

【iOS开发】添加评分功能

问题 openURL无法跳转到App store 报错 &#xff1a;Failed to open URL itms://itunes.apple.com/us/app/apple-store/idxxxxx 使用canOpenURL时&#xff0c;打印出了错误原因&#xff1a;error: “This app is not allowed to query for scheme itms”&#xff0c;显然是配置…

android 键盘遮盖输入框_Android各种键盘挡住输入框解决办法

原标题&#xff1a;Android各种键盘挡住输入框解决办法今日科技快讯C919大型客机首飞成功&#xff0c;让很多人激动不已。然而近日网上也出现了一些不同的声音&#xff1a;说这架飞机许多部件都是进口货&#xff0c;甚至有人说C919中国人只是造了个壳子。对此&#xff0c;业内人…

【转】WPF从我炫系列4---装饰控件的用法

在这一节的讲解中&#xff0c;我将为大家介绍WPF装饰控件的用法&#xff0c;主要为大家讲解一下几个控件的用法. ScrollViewer滚动条控件 Border边框控件 ViewBox自由缩放控件 1. ScrollViewer滚动条控件 大家知道在WPF中的一些布局控件中是不带滚动条的&#xff0c;如果里面…

windeployqt.exe的使用与避坑(windows平台)

1. 介绍 windeployqt.exe是Qt自带的工具&#xff0c;用于创建应用程序发布包。 简单来说&#xff0c;这个工具可以自动地将某程序依赖的库、资源拷贝到其所在目录&#xff0c;防止程序在其他电脑上运行报找不到库的错误。 这里贴上官方文档&#xff1a;https://doc.qt.io/qt-5…

【转】WPF从我炫系统5---基本控件的用法

今天我来给大家讲解WPF中一些基本控件的用法&#xff0c;所谓基本控件&#xff0c;就是我们最常用用到的一些控件&#xff0c;通过这一节的讲解&#xff0c;大家会对WPF中的控件的用法有一个更深入的了解。 1. 基本控件 LABEL控件 Label控件是我们最熟悉的控件&#x…

android自定义push通知_Android自定义Notification的一些坑

第一次在简书发文章&#xff0c;有问题多指教本篇介绍自定义通知样式时会遇到的一些坑,本篇旨在记录坑,而不在全面讲解自定义的方法坑文字颜色:强烈使用系统定义的文字颜色,否则需要固定背景色自定义View的尺寸: 建议自适应&#xff0c;因为不同系统高度会有差别不同系统版本的…

【微软官方文档】应用程序错误处理

https://docs.microsoft.com/zh-cn/windows/win32/debugging-and-error-handling

【转】在WPF中自定义控件

周银辉的开发博客(WPF) 在WPF中自定义控件(1) 一, 不一定需要自定义控件 在使用WPF以前,动辄使用自定义控件几乎成了惯性思维,比如需要一个带图片的按钮,但在WPF中此类任务却不需要如此大费周章,因为控件可以嵌套使用以及可以为控件外观打造一套新的样式就可以了.是否需要我们…

二叉树前序中序后序javascript_JavaScript数据结构与算法之二叉树遍历算法详解【先序、中序、后序】...

本文实例讲述了JavaScript数据结构与算法之二叉树遍历算法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;javascript数据结构与算法--二叉树遍历(先序)先序遍历先访问根节点&#xff0c; 然后以同样方式访问左子树和右子树代码如下&#xff1a;/**二叉树中&#xff0…

Windows上快速在指定目录打开cmd.exe命令行的方法

前言 命令行在项目开发中使用频率很高&#xff0c;在指定目录中打开命令行也是很常见的需求&#xff0c;本文将介绍几种快速在指定目录打开cmd.exe命令行的方法&#xff0c;提高效率。 普通方式 运行->输入cmd.exe&#xff0c;点击确定&#xff0c;打开cmd.exe。 在cmd.…

【转】WPF默认控件模板的获取和资源词典的使用

一、获取默认的控件模板 WPF修改控件模板是修改外观最方便的方式&#xff0c;但是会出现不知道原来的控件的模板长什么样&#xff0c;或者如何在原有控件模板上修改的&#xff0c;下面就分享了获取某控件默认控件模板的方法&#xff08;以控件Button为例&#xff09;&#xff…

python设置默认密码_使用Python生成随机密码的示例分享

生成随机密码这件事情用python来干确实相当的方便&#xff0c;优美的string方法加上choice简直是绝配make_password.py###简单几行代码执行即可生成记不住的字符串###$ python make_passwd.pyDLrw9EiTQs4Wm84qRQwl4L2Lu9g0LgwWjHPtYdyU...$ python make_passwd.pyDLrw9EiTQs4Wm…

【微软官方文档】Windows终端(Windows Terminal)

https://docs.microsoft.com/zh-cn/windows/terminal/