wpf简单的绘图板

时间:2021-12-27 22:39:33
原文: wpf简单的绘图板

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a771948524/article/details/9323121

xaml:

<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="418" Width="525">
    <DockPanel LastChildFill="True">
        <StackPanel MinWidth="100" DockPanel.Dock="Left">
            <TextBlock HorizontalAlignment="Center">editing mode</TextBlock>
            <Button x:Name="btnselection" Margin="5" Click="btnselection_Click">selection</Button>
            <Button x:Name="btndraw" Margin="5" Click="btndraw_Click">draw</Button>
            <Button x:Name="btnerase" Margin="5" Click="btnerase_Click">erase</Button>

            <TextBlock HorizontalAlignment="Center">choss color:</TextBlock>
            <Ellipse x:Name="rectred" Fill="Red" MinHeight="50" Margin="5" MouseDown="rectred_MouseDown"></Ellipse>
            <Ellipse x:Name="rectgreen" Fill="Green" MinHeight="50" Margin="5" MouseDown="rectgreen_MouseDown"></Ellipse>
            <Ellipse x:Name="rectblue" Fill="Blue" MinHeight="50" Margin="5" MouseDown="rectblue_MouseDown"></Ellipse>
            <Ellipse x:Name="rectyellow" Fill="Yellow" MinHeight="50" Margin="5"></Ellipse>
        </StackPanel>
        <InkCanvas x:Name="inkcanvas1" EditingMode="Ink" ClipToBounds="True">
            
        </InkCanvas>
    </DockPanel>
</Window>

 

后台:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace WpfApplication1
{
    /// <summary>
    /// MainWindow.xaml 的交互逻辑
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
 
        }

        private void btnerase_Click(object sender, RoutedEventArgs e)
        {
            inkcanvas1.EditingMode = System.Windows.Controls.InkCanvasEditingMode.EraseByPoint;
        }

        private void rectred_MouseDown(object sender, MouseButtonEventArgs e)
        {
            inkcanvas1.DefaultDrawingAttributes.Color = System.Windows.Media.Colors.Red;
        }

        private void btndraw_Click(object sender, RoutedEventArgs e)
        {
            inkcanvas1.EditingMode = System.Windows.Controls.InkCanvasEditingMode.Ink;
        }

        private void rectgreen_MouseDown(object sender, MouseButtonEventArgs e)
        {
            inkcanvas1.DefaultDrawingAttributes.Color = System.Windows.Media.Colors.Green;
        }

        private void rectblue_MouseDown(object sender, MouseButtonEventArgs e)
        {
            inkcanvas1.DefaultDrawingAttributes.Color = System.Windows.Media.Colors.Blue;
        }

        private void rectyellow_MouseDown(object sender, MouseButtonEventArgs e)
        {
            inkcanvas1.DefaultDrawingAttributes.Color = System.Windows.Media.Colors.Yellow;
;
        }

        private void btnselection_Click(object sender, RoutedEventArgs e)
        {
            inkcanvas1.EditingMode = System.Windows.Controls.InkCanvasEditingMode.Select;
        }


    }
}


 

效果:

wpf简单的绘图板