-
공용 Render 함수 예제업무용 소스 예제 2022. 1. 12. 10:48728x90반응형
- 공용 Render 함수 예제
protected override void OnRender(DrawingContext drawingContext) { try { if(_startP != null && _mp != null) { double minX = _startP.Value.X; if (_mp.Value.X < minX) minX = _mp.Value.X; double maxX = _startP.Value.X; if (_mp.Value.X > maxX) maxX = _mp.Value.X; SolidColorBrush br = new SolidColorBrush(); br.Color = Colors.White; br.Opacity = 0.3; _timeGapWidth = (maxX - minX + 1); Point start_p1 = new Point(_startP.Value.X,0); Point start_p2 = new Point(_startP.Value.X, this.ActualHeight); Point end_p1 = new Point(_mp.Value.X, 0); Point end_p2 = new Point(_mp.Value.X, this.ActualHeight); drawingContext.DrawLine(new Pen(Brushes.Red, 1), start_p1, start_p2); drawingContext.DrawLine(new Pen(Brushes.Red, 1), end_p1, end_p2); drawingContext.DrawRectangle(br, null, new Rect(new Point(minX, 0), new Size(_timeGapWidth, this.ActualHeight))); } } catch (Exception ee) { TraceManager.AddLog(string.Format("{0}r\n{1}", ee.StackTrace, ee.Message)); System.Diagnostics.Debug.WriteLine(string.Format("{0}r\n{1}", ee.StackTrace, ee.Message)); } finally { base.OnRender(drawingContext); } } Point? _startP = null; public delegate void ChangeTimeGapHandler(double timeGapWidth); public event ChangeTimeGapHandler onChangeTimeGapEvent;
728x90반응형'업무용 소스 예제' 카테고리의 다른 글
C# 셀레늄 : 사이트 팝업창 접근 과 처리 방법 (79) 2023.05.12 마우스 포지션의 도플러값 반환 예제 (23) 2022.02.26 DB로 부터 동영상 리스트 불러오는 예제 (13) 2021.12.27 SwitchComManager Class (5) 2021.12.03 시스템 정보 구조체 구성 참조용 예제 (4) 2021.11.03