首页 > 其他分享 >WPF Canvas ZoomIn ZoomOut via set Background="Transparent"

WPF Canvas ZoomIn ZoomOut via set Background="Transparent"

时间:2024-07-13 21:55:03浏览次数:14  
标签:Canvas via scaler 1.2 ZoomOut set ZoomIn

  <Canvas Grid.Column="1" Background="Transparent" x:Name="cvs" ClipToBounds="True" MouseWheel="cvs_MouseWheel" MouseDown="cvs_MouseDown"
  MouseUp="cvs_MouseUp" MouseMove="cvs_MouseMove">
      <Canvas.LayoutTransform>
          <TransformGroup>
              <ScaleTransform x:Name="scaler"/>
              <TranslateTransform x:Name="translater"/>
          </TransformGroup>
      </Canvas.LayoutTransform>
  </Canvas>



 private void cvs_MouseWheel(object sender, MouseWheelEventArgs e)
 {
     if(e.Delta>0)
     {
         scaler.ScaleX *= 1.2;
         scaler.ScaleY *= 1.2;
     }
     else
     {
         scaler.ScaleX /= 1.2;
         scaler.ScaleY /= 1.2;
     }
     scaler.CenterX = e.GetPosition(this).X;
     scaler.CenterY= e.GetPosition(this).Y;
 }

 

 

 

 

标签:Canvas,via,scaler,1.2,ZoomOut,set,ZoomIn
From: https://www.cnblogs.com/Fred1987/p/18300783

相关文章

  • WPF canvas locate
    //xaml<Windowx:Class="WpfApp210.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.mi......
  • How to link multiple docker-compose services via network
    Howtolinkmultipledocker-composeservicesvianetworkNewscenario:SharinganetworkbetweenservicesIfyouwantdefineservicesinmultipledocker-compose.ymlfiles,andalsohavenetworkconnectivitybetweentheservices,youneedtoconfigureyou......
  • WPF WebBrowser navigate to website via url and escape script error warning
    Copyfrom https://www.iditect.com/faq/csharp/wpf-webbrowser-control--how-to-suppress-script-errors.html#:~:text=To%20suppress%20these%20script%20errors%2C%20you%20can%20handle,using%20the%20Cancel%20property%20of%20the%20WebBrowserNavigatingEventArgs%20pa......
  • WPF display and host pdf via WebBrowser
    //xaml<Windowx:Class="WpfApp206.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.mi......
  • Canvas:实现在线画板操作
    想象一下,用几行代码就能创造出如此逼真的图像和动画,仿佛将艺术与科技完美融合,前端开发的Canvas技术正是这个数字化时代中最具魔力的一环,它不仅仅是网页的一部分,更是一个无限创意的画布,一个让你的想象力自由驰骋的平台。目录基础页面搭建绘画操作按钮点击事件最后总结......
  • WPF customize DelegateCommand via implementation interface System.Windows.Input.
    publicclassDelCmd:ICommand{privatereadonlyAction<Object>execute;privatereadonlyPredicate<Object>canExecute;publicDelCmd(Action<object>executeValue,Predicate<object>canExecuteValue){execut......
  • Echarts:渲染成Canvas还是SVG,该如何抉择?
    ECharts从初始一直使用Canvas绘制图表。而EChartsv4.0发布了SVG渲染器,从而提供了一种新的选择。在初始化图表实例时,只需设置renderer参数为'canvas'或'svg'即可指定渲染器,比较方便。贝格前端工场带领大家看下如何选择。一、Canvas和SVG的区分Canvas和SVG都是......
  • WPF MouseWheel MouseDown MouseUp MouseMove mapped in mvvm via behavior
    //xaml<Windowx:Class="WpfApp201.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.mi......
  • 学习canvas(一些常用api)
    当然,以下是这些常用CanvasAPI的总结,按照Markdown格式编写:常用CanvasAPI总结1.获取绘图上下文constcanvas=document.getElementById('myCanvas');constctx=canvas.getContext('2d');//或'webgl'2.绘制矩形ctx.fillStyle='blue';ctx.fillRect(1......
  • 学习canvas(初步入门)
    canvas一些基础api用法首先需要创建一个canvas<canvasid="canvas"></canvas>然后获取到这个元素,可以用Document.getElementById('canvas')constcanvas=document.getElementById("canvas");然后拿到他的上下文对象ctx(然后可以在上下文的位置绘制内容)constcan......