首页 > 其他分享 >WPF绘图指南:用XAML轻松实现圆、线、矩形、文字、图片创意元素

WPF绘图指南:用XAML轻松实现圆、线、矩形、文字、图片创意元素

时间:2024-03-13 09:04:22浏览次数:17  
标签:源代码 示例 XAML 元素 绘图 WPF 矩形

 

概述:在WPF中,通过使用不同的元素如Ellipse、Line、Rectangle等,可以轻松绘制各种图形,包括圆、线条、椭圆、矩形、多边形等。同时,通过TextBlock展示文字,Image展示图片,以及Path创建路径和曲线,使得图形的绘制变得灵活多样。通过简单的XAML代码,开发者可以快速构建各种图形和界面元素

在WPF中,你可以使用Ellipse、Line、Rectangle、Polygon等元素来绘制基本的形状,同时可以使用TextBlock来显示文字,Image来展示图片,以及Path元素来创建复杂的路径和曲线。以下是详细的步骤和示例源代码:

看一个综合应用效果:

 

源代码文末提供

下面来看下基础绘制方法:

1. 画圆

<Canvas>
    <Ellipse Width="50" Height="50" Fill="Blue"/>
</Canvas>

2. 画线条

<Canvas>
    <Line X1="0" Y1="0" X2="100" Y2="100" Stroke="Black" StrokeThickness="2"/>
</Canvas>

3. 画椭圆

<Canvas>
    <Ellipse Width="100" Height="50" Fill="Green"/>
</Canvas>

4. 画矩形

<Canvas>
    <Rectangle Width="100" Height="50" Fill="Red"/>
</Canvas>

5. 画多边形

<Canvas>
    <Polygon Points="0,0 50,0 50,50" Fill="Yellow"/>
</Canvas>

6. 画文字

<Canvas>
    <TextBlock Text="Hello WPF!" FontSize="20" Foreground="Purple"/>
</Canvas>

7. 画图片

<Canvas>
    <Image Source="your_image_path.jpg" Width="100" Height="100"/>
</Canvas>

8. 画路径

<Canvas>
    <Path Stroke="Orange" StrokeThickness="2">
        <Path.Data>
            <PathGeometry>
                <PathFigure StartPoint="0,0">
                    <LineSegment Point="50,50"/>
                    <LineSegment Point="100,0"/>
                </PathFigure>
            </PathGeometry>
        </Path.Data>
    </Path>
</Canvas>

9. 画曲线

<Canvas>
    <Path Stroke="Brown" StrokeThickness="2">
        <Path.Data>
            <PathGeometry>
                <PathFigure StartPoint="0,0">
                    <QuadraticBezierSegment Point1="50,100" Point2="100,0"/>
                </PathFigure>
            </PathGeometry>
        </Path.Data>
    </Path>
</Canvas>

10. 画贝塞尔曲线

<Canvas>
    <Path Stroke="Gray" StrokeThickness="2">
        <Path.Data>
            <PathGeometry>
                <PathFigure StartPoint="0,0">
                    <BezierSegment Point1="25,50" Point2="75,50" Point3="100,0"/>
                </PathFigure>
            </PathGeometry>
        </Path.Data>
    </Path>
</Canvas>

以上示例中,Canvas是一个用于布局子元素的容器,你可以根据需要选择不同的容器。在实际项目中,你可能需要使用更复杂的布局,例如Grid或StackPanel。

请注意,这只是基本示例,你可以根据需求修改属性以及组合不同的元素来创建更复杂的图形。实际场景里如果想实现动画效果一般需要辅助代码来实现。

源代码:https://pan.baidu.com/s/1Rgssy7HTwL0dxPbTUeo27w?pwd=6666 

 

标签:源代码,示例,XAML,元素,绘图,WPF,矩形
From: https://www.cnblogs.com/hanbing81868164/p/18069741

相关文章

  • 探究WPF中文字模糊的问题:TextOptions的用法
    有网友问WPF中一些文字模糊是什么问题。之前我也没有认真思考过这个问题,只是大概知道和WPF的像素对齐(pixelsnapping)、抗锯齿(anti-aliasing)有关,通过设置附加属性TextOptions.TextFormattingMode或者TextOptions.TextRenderingMode来解决。这次我也查了下资料,了解了这几个附加属性......
  • wpf datagrid row background color alternatively changed based on row index,Alter
    <Windowx:Class="WpfApp7.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.c......
  • WPF RichTextBox 文本超过限定行数移除旧数据
    在使用serilog.sinks.richtextbox显示日志时,会需要移除旧的日志信息的需求,实现打码如下;根据换行符“\n”进行判断; privatevoidCheckAndRemoveText(){intnewLineCount=0;boolremoveText=false;foreach(Paragraphparagraphin_richTex......
  • WPF 实现文件/文件夹监听工具
    参考gpt环境软件/系统版本说明WindowsWindows10专业版22H219045.4046MicrosoftVisualStudioMicrosoftVisualStudioCommunity2022(64位)-17.6.5Microsoft.NetSDK8.0.101手动安装Microsoft.NetSDK7.0.306MicrosoftVisualStudio......
  • WPF实现颜色选择器
    先看效果图; 再说一下思路: 打开设计器,属性里面找到"颜色",设置为渐变色,将渐变色设置为9段,分别是,红橙黄绿青蓝紫白黑(Red,Orange,Yellow,Lime,Cyan,Blue,Magenta,White,Black);然后移动滑块儿,比如在红色和橙色和黄色之间移动的时候,会发现颜色的RGB值是有规律的变化的,R是固定......
  • 【WPF】-ComboBox控件详解
    ComboBox控件在很多方面都类似于ListBox控件,但占用的空间要少得多,因为项目列表在不需要时会隐藏起来。ComboBox控件在Windows中的很多地方都有使用,但为了确保每个人都知道它的外观和工作方式,我们将直接进入一个简单的示例:<Windowx:Class="WpfTutorialSamples.ComboBox_co......
  • WPF 选择文件夹,并解决 System.Windows.Forms 不存在的问题
    参考gpthttps://blog.csdn.net/YUNAN_ZHANG/article/details/124689596环境软件/系统版本说明WindowsWindows10专业版22H219045.4046MicrosoftVisualStudioMicrosoftVisualStudioCommunity2022(64位)-17.6.5Microsoft.NetSDK8.0.101......
  • WPF 解决 CommandParameter 参数不更新问题
    参考https://devbox.cn/p/WPFCommandParame_71b81418.html环境软件/系统版本说明WindowsWindows10专业版22H219045.4046MicrosoftVisualStudioMicrosoftVisualStudioCommunity2022(64位)-17.6.5Microsoft.NetSDK8.0.101手动安装Mic......
  • WPF多数类概念性注册加自动扫描
    在java中springboot的配置应用了自动扫描@ComponentScan(value={"com.example","com.fox"})而对于Asp.NetCore可以使用ScrutorstaticvoidMain(string[]args){varcollection=newServiceCollection();collection.Scan(action=>......
  • 【C#】示波器大数据量取点采样及绘图(波形回放)
    一、示波器不同取样方式的选择 示波器不同取样方式的选择-知乎(zhihu.com)测量仪器中的各种波形抽取方式(antpedia.com)示波器的抽取(Decimation)模式-电子工程世界(eeworld.com.cn)一般用等间隔采样比较还原波形。 二、控件选择1、Dev的ChartControl点数多、曲线多......