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>
复制代码

 

posted @   GavinJune  阅读(4421)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示