private void OnMouseDown(object sender, MouseButtonEventArgs e) { if (GetItemFunc != null && e.ChangedButton == EmptyKeys.UserInterface.Input.MouseButton.Left) { this.item = GetItemFunc.Invoke(this.Control, e.GetPosition(this.Control)); } }
private void OnMouseUp(object sender, MouseButtonEventArgs e) { if (GetItemFunc != null && e.ChangedButton == EmptyKeys.UserInterface.Input.MouseButton.Left) { T item = GetItemFunc.Invoke(this.Control, e.GetPosition(this.Control)); if (item != null && object.Equals(item, this.item)) { this.ClickFunc?.Invoke(item); } this.item = default(T); } }