当前位置: 首页>>代码示例>>C#>>正文


C# Rectangle.ReleaseMouseCapture方法代码示例

本文整理汇总了C#中System.Windows.Shapes.Rectangle.ReleaseMouseCapture方法的典型用法代码示例。如果您正苦于以下问题:C# Rectangle.ReleaseMouseCapture方法的具体用法?C# Rectangle.ReleaseMouseCapture怎么用?C# Rectangle.ReleaseMouseCapture使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Windows.Shapes.Rectangle的用法示例。


在下文中一共展示了Rectangle.ReleaseMouseCapture方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: drawingPanelMouseDown

        private void drawingPanelMouseDown(object sender, MouseButtonEventArgs e)
        {
            _capturedPosition = e.GetPosition(drawingPanel);
            _mouseCaptured = true;
            _newRect = true;
            var rect = new Rectangle { Height = 1, Width = 1, Opacity = 0.2 };
            drawingPanel.Children.Add(rect);
            Canvas.SetLeft(rect, _capturedPosition.X);
            Canvas.SetTop(rect, _capturedPosition.Y);

            rect.CaptureMouse();
            rect.MouseMove += (_s,_e) =>
            {
                if (_mouseCaptured)
                {
                    if (_capturedPosition.Y < _e.GetPosition(drawingPanel).Y)
                    {
                        rect.Height = _e.GetPosition(drawingPanel).Y - _capturedPosition.Y;
                    }
                    else
                    {
                        rect.Height = _capturedPosition.Y - _e.GetPosition(drawingPanel).Y;
                        Canvas.SetTop(rect, _e.GetPosition(drawingPanel).Y);
                    }
                    if (_capturedPosition.X < _e.GetPosition(drawingPanel).X)
                    {
                        rect.Width = _e.GetPosition(drawingPanel).X - _capturedPosition.X;
                    }
                    else
                    {
                        rect.Width = _capturedPosition.X - _e.GetPosition(drawingPanel).X;
                        Canvas.SetLeft(rect, _e.GetPosition(drawingPanel).X);
                    }
                }
            };

            rect.MouseLeftButtonDown += (_s,_e) =>
            {

            };

            rect.MouseRightButtonDown += (_s, _e) =>
            {
                drawingPanel.Children.Remove(rect);
            };

            rect.MouseUp += (_s, _e) =>
            {
                _mouseCaptured = false;
                _newRect = false;
                rect.ReleaseMouseCapture();
                ReleaseMouseCapture();
            };
        }
开发者ID:kblc,项目名称:ExcelConverter,代码行数:54,代码来源:ImageParsingUserControl.xaml.cs


注:本文中的System.Windows.Shapes.Rectangle.ReleaseMouseCapture方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。