|
|
|
@ -90,8 +90,20 @@ namespace Avalonia.Controls |
|
|
|
|
|
|
|
internal TreeView? TreeViewOwner => _treeView; |
|
|
|
|
|
|
|
protected internal override Control CreateContainerForItemOverride() => new TreeViewItem(); |
|
|
|
protected internal override bool IsItemItsOwnContainerOverride(Control item) => item is TreeViewItem; |
|
|
|
protected internal override Control CreateContainerForItemOverride() |
|
|
|
{ |
|
|
|
return EnsureTreeView().CreateContainerForItemOverride(); |
|
|
|
} |
|
|
|
|
|
|
|
protected internal override bool IsItemItsOwnContainerOverride(Control item) |
|
|
|
{ |
|
|
|
return EnsureTreeView().IsItemItsOwnContainerOverride(item); |
|
|
|
} |
|
|
|
|
|
|
|
protected internal override void PrepareContainerForItemOverride(Control container, object? item, int index) |
|
|
|
{ |
|
|
|
EnsureTreeView().PrepareContainerForItemOverride(container, item, index); |
|
|
|
} |
|
|
|
|
|
|
|
/// <inheritdoc/>
|
|
|
|
protected override void OnAttachedToLogicalTree(LogicalTreeAttachmentEventArgs e) |
|
|
|
@ -283,6 +295,9 @@ namespace Avalonia.Controls |
|
|
|
return logical != null ? result : @default; |
|
|
|
} |
|
|
|
|
|
|
|
private TreeView EnsureTreeView() => _treeView ?? |
|
|
|
throw new InvalidOperationException("The TreeViewItem is not part of a TreeView."); |
|
|
|
|
|
|
|
private void HeaderDoubleTapped(object? sender, TappedEventArgs e) |
|
|
|
{ |
|
|
|
OnHeaderDoubleTapped(e); |
|
|
|
|