首页 > 代码库 > WPF布局管理之Canvas、InkCanvas (转)

WPF布局管理之Canvas、InkCanvas (转)

一、Canvas

在WPF中子元素的绝对定位的布局控件

  • 其子元素使用Width、Height定义元素的宽度和高度
  • 使用Convas.Left(Convas.Right)、Convas.Top(Convas.Bottom)定义与Convas容器的相对位置
  • 如果同时存在Convas.Left和Convas.Right、Convas.Top和Convas.Bottom,则Convas.Left、Convas.Top优先生效

例如:

 <Canvas>  <Button Canvas.Left="10" Canvas.Top="10" Height="23" Width="75">LT</Button> <Button Canvas.Right="10" Canvas.Top="10" Height="23" Width="75">RT</Button> <Button Canvas.Left="10" Canvas.Bottom="10" Height="23" Width="75">LB</Button> <Button Canvas.Right="10" Canvas.Bottom="10" Height="23" Width="75">RB</Button></Canvas>

在调整窗体大小时,LT与左、上距离保持不变;RT与右、上距离保持不变;LB与左、下距离保持不变;RB与右、下距离保持不变。使用Canvas不能简单地实现Windows应用程序中Acho的功能。

二、InkCanvas

在WPF中实现允许使用墨迹的控件。如:

 <Window x:Class="WPFLayoutDemo.InkCanvasDemo"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"  Title="InkCanvasDemo" Height="200" Width="300"> <InkCanvas>     <InkCanvas.DefaultDrawingAttributes>            <DrawingAttributes Color="Red" />        </InkCanvas.DefaultDrawingAttributes>    </InkCanvas> </Window>