예제 #1
0
        /// <summary>
        /// 高亮一个元素
        /// </summary>
        /// <param name="color">高亮的颜色</param>
        /// <param name="duration">延迟时间</param>
        /// <param name="blocking">是否堵塞</param>
        public void DrawHighlight(Color?color = null, TimeSpan?duration = null, bool blocking = false)
        {
            var colorName = color ?? Color.Red;
            var rectangle = uiNode.BoundingRectangle;

            this.BoundingRectangle = uiNode.BoundingRectangle;
            if (!rectangle.IsEmpty)
            {
                var durationInMs = (int)(duration ?? TimeSpan.FromSeconds(2)).TotalMilliseconds;

                var overlayManager = new WinFormsOverlayManager();
                if (blocking)
                {
                    overlayManager.ShowBlocking(rectangle, colorName, durationInMs);
                }
                else
                {
                    overlayManager.Show(rectangle, colorName, durationInMs);
                }
            }
        }