WPF实现点击穿透以及线擦的实时虚线

里面的功能有:改变画笔大小、改变画笔颜色、改变橡皮擦的大小,线擦的区域擦除,修改鼠标图标以及点击穿透。
XAML:

<Window x:Class="WpfApplication2.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WpfApplication2"
        mc:Ignorable="d"
        Loaded="Window_Loaded"
        Title="MainWindow" Height="350" Width="525" WindowStyle="None" AllowsTransparency="True" Background="Transparent">
    <Grid x:Name="grid">
        <InkCanvas x:Name="inkCanvas"
                   Width="525" Height="350" MouseMove="MouseMove_Click" MouseLeftButtonDown="InkCanvas_MouseLeftButtonDown" MouseLeftButtonUp="InkCanvas_MouseLeftButtonUp">
            <InkCanvas.Background>
                <SolidColorBrush Color="White" Opacity="0.01"></SolidColorBrush>
            </InkCanvas.Background>
        </InkCanvas>
        <Canvas Width="60" HorizontalAlignment="Right">
            <RadioButton Click="RadioButton_Click0" Tag="5" Width="30" Height="20" Canvas.Top="20">5</RadioButton>
            <RadioButton Click="RadioButton_Click0" Tag="10" Width="30" Height="20" Canvas.Top="40">10</RadioButton>
            <RadioButton Click="RadioButton_Click0" Tag="15" Width="30" Height="20" Canvas.Top="60">15</RadioButton>
            <RadioButton Click="RadioButton_Click1" Tag="红" Width="30" Height="20" Canvas.Top="100">红</RadioButton>
            <RadioButton Click="RadioButton_Click1" Tag="绿" Width="30" Height="20" Canvas.Top="120">绿</RadioButton>
            <RadioButton Click="RadioButton_Click1" Tag="蓝" Width="30" Height="20" Canvas.Top="140">蓝</RadioButton>
            <RadioButton Click="RadioButton_Click" Tag="A" Width="55" Height="20" Canvas.Top="180">书写</RadioButton>
            <RadioButton Click="RadioButton_Click" Tag="B" Width="55" Height="20" Canvas.Top="200">点擦小</RadioButton>
            <RadioButton Click="RadioButton_Click" Tag="C" Width="55" Height="20" Canvas.Top="220">点擦中</RadioButton>
            <RadioButton Click="RadioButton_Click" Tag="D" Width="55" Height="20" Canvas.Top="240">点擦大</RadioButton>
            <RadioButton Click="RadioButton_Click" Tag="E" Width="55" Height="20" Canvas.Top="260">线擦</RadioButton>
            <RadioButton Click="RadioButton_Click" Tag="F" Width="55" Height="20" Canvas.Top="280">清空</RadioButton>
            <RadioButton Click="RadioButton_Click" Tag="G" Width="55" Height="20" Canvas.Top="300">操作</RadioButton>
        </Canvas>
    </Grid>
</Window>

cs:

using Microsoft.Win32.SafeHandles;
using System;
using System.C
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值