在这一节的讲解中,我将为大家介绍WPF装饰控件的用法,主要为大家讲解一下几个控件的用法.

ScrollViewer滚动条控件

Border边框控件

ViewBox自由缩放控件

1. ScrollViewer滚动条控件

大家知道在WPF中的一些布局控件中是不带滚动条的,如果里面的内容控件超过了外面布局控件的大小,就不能完全被显示出来,这个时候我们就可以使用滚动条控件,让它滚动显示.

效果图:

 

默认情况下ScrollViewer是显示垂直滚动条的。但是可以通过属性来控制滚动条的显示。

HorizontalScrollBarVisibility设置水平滚动条

VerticalScrollBarVisibility  设置垂直滚动条

通过以下属性可以设置滚动条的显示与否

Visible滚动条一直显示

Hidden隐藏滚动条

Auto 自动显示,当超过外面大小时显示,当没有超过外部容器大小时不显示。

Disabled 禁止显示滚动条

XMAL代码

<Window x:Class="WpfContentControl.WinScroll"

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

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

        Title="WinScroll" Height="283" Width="426">

<ScrollViewer Name="scrollViewer1" HorizontalScrollBarVisibility="Visible" VerticalScrollBarVisibility="Disabled">

<Grid Height="400" Width="400">

<Grid.RowDefinitions>

<RowDefinition></RowDefinition>

<RowDefinition Height="100"></RowDefinition>

<RowDefinition></RowDefinition>

</Grid.RowDefinitions>

<Rectangle Fill="Bisque"></Rectangle>

<Image Source="1.gif" Grid.Row="1"></Image>

<Rectangle Fill="Aqua" Grid.Row="2"></Rectangle>

</Grid>

</ScrollViewer>

</Window>

当然了,ScrollViewer控件还有很多属性,用户可以自己设置,也可以以编程方式去设置,这里我就不多说了。

2-Border边框控件

Border控件主要用于为其他控件设置一个漂亮的边框外观。

我们设计了一红色圆角的TextBox控件

效果图

 

Border控件的一些属性可以设置控件的外观样式

BorderThickness设置控件边框宽度

BorderBrush设置背景颜色

CornerRadius设置圆角角度

XMAL代码

<Grid>

<Border BorderBrush="Red" BorderThickness="2" HorizontalAlignment="Left" Margin="37,80,0,69" Name="border1"  Height="23" CornerRadius="5" >

<TextBox Height="23" Name="textBox1" Width="120"  />

</Border>

</Grid>

3. ViewBox自由缩放控件

ViewBox控件是一个可以自由缩放里面内容大小的控件,使控件随着外部窗体的大小比例进行变换。

效果图

 

ViewBox实现按比例缩放,可以使用Stretch属性设置缩放方式,有以下属性设置

None:保存原始大小,不进行缩放

Fill:内容大小填充目标尺寸

Uniform:在保留原始纵横比的基础上调整大小

UniformToFill:在保留原始纵横比的基础上调整大小,如果源矩形的纵横比不能满足目标矩形的纵横比,则对其剪切填充。

XMAL代码

<Window x:Class="WpfContentControl.WinViewBox"

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

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

        Title="WinViewBox" Height="300" Width="300">

<Grid>

<Viewbox Name="viewbox1" >

<StackPanel>

<Rectangle Width="50" Height="30" Fill="Black"></Rectangle>

<Image Source="1.gif" Height="45" Width="47"></Image>

</StackPanel>

</Viewbox>

</Grid>

</Window>

 关于这几个控件的用法,就写到这里。

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

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

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

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

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

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

    今天我来给大家讲解WPF中一些基本控件的用法,所谓基本控件,就是我们最常用用到的一些控件,通过这一节的讲解,大家会对WPF中的控件的用法有一个更深入的了解. 1.       基本控件 LABEL控件 ...

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

    4.        GRID控件 Grid控件可以是说是wpf中功能最强大和使用最多的控件.它有点类似于HMTL网页布局中的表格,可以自定义行列显示,并可以合并某些行和列. 使用<Grid.Ro ...

  5. WPF 使用依赖属性(DependencyProperty) 定义用户控件中的Image Source属性

    原文:WPF 使用依赖属性(DependencyProperty) 定义用户控件中的Image Source属性 如果你要自定义一个图片按钮控件,那么如何在主窗体绑定这个控件上图片的Source呢? ...

  6. .net组件开发系列之武术系列 武术招数 控件生命周期与控件事件机制

    .net组件开发系列之武术系列 武术招数 控件生命周期与控件事件机制一.控件生命周期 先回述上篇,可能表述没有不清晰,也可能跨度大了点,好的,我们来一个循序渐进过程,大家都知道,武术都有招术的,先出什 ...

  7. WPF中自定义的DataTemplate中的控件,在Window_Loaded事件中加载机制初探

    原文:WPF中自定义的DataTemplate中的控件,在Window_Loaded事件中加载机制初探 最近因为项目需要,开始学习如何使用WPF开发桌面程序.使用WPF一段时间之后,感觉WPF的开发思 ...

  8. WPF编程,通过KeyFrame 类型制作控件线性动画的一种方法。

    WPF编程,通过KeyFrame 类型制作控件线性动画的一种方法. 原文: WPF编程,通过KeyFrame 类型制作控件线性动画的一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https ...

  9. WPF编游戏系列 之四 用户控件

    在上一篇<WPF编游戏系列 之三 物品清单>中,对物品清单进行了演示,其中反复用到了同一组控件(如下图),而且 颜昌钢也指出在3.2.2中使用的C#代码过多,其实我在写这些代码时也有同感, ...

最新文章

  1. 秒懂QPS、TPS、PV、UV、GMV、IP、RPS!
  2. 澳洲留学征文活动获奖情况公布
  3. mongodb,redis,mysql简要对比
  4. ruby on rails Mac 安装
  5. » Markdown/reST 编辑器 ReText 3.0 发布 Wow! Ubuntu
  6. PCIe是什么?PCIe标准和PCIe布线规则总结概述
  7. 构造函数怎么在主函数调用_C++ 虚基类及其派生类构造函数(学习笔记:第7章 12)...
  8. C 和 C++ 宏 详解
  9. 想做大数据的,可以看看这个学习路线,超全!
  10. 二分查找的平均查找长度_二分查找(折半查找)代码实现
  11. ListIterator和Iterator的区别
  12. Linux服务器安全加固
  13. 立创开源 | 基于stm32的稳定输出9v的双向DCDC自动稳压系统
  14. 【场景化解决方案】金蝶凭证信息与OA审批集成
  15. SqlServer2005 provider: TCP 提供程序, error: 0 - 由于目标计算机积极拒绝,无法连接。) (Microsoft SQL Server,错误: 10061)问题解决
  16. 联想xiaoxin700-15isk黑苹果clover分享
  17. 黔程似锦——2021国庆游攻略
  18. visio版本要和word匹配吗_office2016各个版本 以及 解决visio搜索任何都提示无匹配项问题...
  19. NR PRACH(六) type 2(2-step) RA基本过程及时频域映射
  20. 关于TTS SpeechVoiceSpeakFlags几个值的中文意思?

热门文章

  1. 2019 DDCTF 部分writeup
  2. grafana授权公司内部邮箱登录 ldap配置
  3. 小米范工具系列之二:小米范 web目录扫描器
  4. erlang OTP中的四大behaviour fsm的例子
  5. ViewGroup之getScrollX()
  6. uva11991 Easy Problem from Rujia Liu?
  7. 【啃不完的算法导论】- 动态规划 - 最长公共子序列(概念篇)
  8. 我的世界javamod怎么装_装暖气片,10个有8个人都想知道的这点事儿!
  9. java 存储空间_Java中的存储空间类型
  10. sql如何遍历几百万的表_SQL Server遍历表中记录的2种方法(使用表变量和游标)