feat: add selected item template. make sure mouse click works.

This commit is contained in:
rabbitism
2024-03-27 22:05:26 +08:00
parent 2c2fc63633
commit 1b7ed16ca9
5 changed files with 16 additions and 4 deletions

View File

@@ -79,6 +79,15 @@ public class MultiComboBox: SelectingItemsControl, IInnerContentControl
get => GetValue(InnerRightContentProperty);
set => SetValue(InnerRightContentProperty, value);
}
public static readonly StyledProperty<IDataTemplate?> SelectedItemTemplateProperty = AvaloniaProperty.Register<MultiComboBox, IDataTemplate?>(
nameof(SelectedItemTemplate));
public IDataTemplate? SelectedItemTemplate
{
get => GetValue(SelectedItemTemplateProperty);
set => SetValue(SelectedItemTemplateProperty, value);
}
static MultiComboBox()
{

View File

@@ -87,7 +87,7 @@ public class MultiComboBoxItem: ContentControl
e.InitialPressMouseButton is MouseButton.Left or MouseButton.Right)
{
var point = e.GetCurrentPoint(this);
if (new Rect(Bounds.Size).ContainsExclusive(point.Position))
if (new Rect(Bounds.Size).ContainsExclusive(point.Position) && e.Pointer.Type == PointerType.Touch)
{
this.IsSelected = !this.IsSelected;
e.Handled = true;