/// <summary> /// 鼠标按下时的选中类型 /// 一定会选中 /// </summary> /// <param name="e"></param> protected override void OnMouseLeftButtonDown(System.Windows.Input.MouseButtonEventArgs e) { entryDown = true; var handle = _Selected; if (handle != null) { selectedType = handle(this.PointFromScreen(new Point()), e.GetPosition(this)); } PillTick("BtnDown"); e.Handled = true; }
/// <summary> /// 鼠标抬起时触发对应的弹窗 /// 也可能没有 /// </summary> /// <param name="e"></param> protected override void OnMouseLeftButtonUp(System.Windows.Input.MouseButtonEventArgs e) { if (!entryDown) { return; } if (_PopWindowAction != null && selectedType != PageRetType.None) { _PopWindowAction.Invoke(selectedType); } //清除 selectedType = PageRetType.None; entryDown = false; PillTick("BtnUp"); e.Handled = true; }