Browse Source

Fixed ItemContainerGenerator usages.

pull/7514/head
Dariusz Komosinski 5 years ago
parent
commit
27f920a79d
  1. 6
      src/Avalonia.Controls/ComboBox.cs
  2. 6
      src/Avalonia.Controls/MenuBase.cs
  3. 6
      src/Avalonia.Controls/MenuItem.cs
  4. 2
      src/Avalonia.Controls/Presenters/CarouselPresenter.cs
  5. 2
      src/Avalonia.Controls/Primitives/SelectingItemsControl.cs
  6. 2
      src/Avalonia.Controls/TabControl.cs
  7. 2
      src/Avalonia.Controls/TreeView.cs
  8. 2
      src/Avalonia.Controls/TreeViewItem.cs

6
src/Avalonia.Controls/ComboBox.cs

@ -360,12 +360,12 @@ namespace Avalonia.Controls
var selectedIndex = SelectedIndex;
if (IsDropDownOpen && selectedIndex != -1)
{
var container = ItemContainerGenerator!.ContainerFromIndex(selectedIndex);
var container = ItemContainerGenerator.ContainerFromIndex(selectedIndex);
if (container == null && SelectedIndex != -1)
{
ScrollIntoView(Selection.SelectedIndex);
container = ItemContainerGenerator!.ContainerFromIndex(selectedIndex);
container = ItemContainerGenerator.ContainerFromIndex(selectedIndex);
}
if (container != null && CanFocus(container))
@ -415,7 +415,7 @@ namespace Avalonia.Controls
private void SelectFocusedItem()
{
foreach (ItemContainerInfo dropdownItem in ItemContainerGenerator!.Containers)
foreach (ItemContainerInfo dropdownItem in ItemContainerGenerator.Containers)
{
if (dropdownItem.ContainerControl.IsFocused)
{

6
src/Avalonia.Controls/MenuBase.cs

@ -81,13 +81,13 @@ namespace Avalonia.Controls
{
var index = SelectedIndex;
return (index != -1) ?
(IMenuItem?)ItemContainerGenerator!.ContainerFromIndex(index) :
(IMenuItem?)ItemContainerGenerator.ContainerFromIndex(index) :
null;
}
set
{
SelectedIndex = value is not null ?
ItemContainerGenerator!.IndexFromContainer(value) : -1;
ItemContainerGenerator.IndexFromContainer(value) : -1;
}
}
@ -96,7 +96,7 @@ namespace Avalonia.Controls
{
get
{
return ItemContainerGenerator!.Containers
return ItemContainerGenerator.Containers
.Select(x => x.ContainerControl)
.OfType<IMenuItem>();
}

6
src/Avalonia.Controls/MenuItem.cs

@ -308,12 +308,12 @@ namespace Avalonia.Controls
{
var index = SelectedIndex;
return (index != -1) ?
(IMenuItem?)ItemContainerGenerator!.ContainerFromIndex(index) :
(IMenuItem?)ItemContainerGenerator.ContainerFromIndex(index) :
null;
}
set
{
SelectedIndex = value is not null ? ItemContainerGenerator!.IndexFromContainer(value) : -1;
SelectedIndex = value is not null ? ItemContainerGenerator.IndexFromContainer(value) : -1;
}
}
@ -322,7 +322,7 @@ namespace Avalonia.Controls
{
get
{
return ItemContainerGenerator!.Containers
return ItemContainerGenerator.Containers
.Select(x => x.ContainerControl)
.OfType<IMenuItem>();
}

2
src/Avalonia.Controls/Presenters/CarouselPresenter.cs

@ -170,7 +170,7 @@ namespace Avalonia.Controls.Presenters
{
if (fromIndex != toIndex)
{
var generator = ItemContainerGenerator!;
var generator = ItemContainerGenerator;
IControl? from = null;
IControl? to = null;

2
src/Avalonia.Controls/Primitives/SelectingItemsControl.cs

@ -908,7 +908,7 @@ namespace Avalonia.Controls.Primitives
{
MarkContainerSelected(
container,
Selection.IsSelected(ItemContainerGenerator!.IndexFromContainer(container)));
Selection.IsSelected(ItemContainerGenerator.IndexFromContainer(container)));
}
}
}

2
src/Avalonia.Controls/TabControl.cs

@ -164,7 +164,7 @@ namespace Avalonia.Controls
else
{
var container = SelectedItem as IContentControl ??
ItemContainerGenerator!.ContainerFromIndex(SelectedIndex) as IContentControl;
ItemContainerGenerator.ContainerFromIndex(SelectedIndex) as IContentControl;
SelectedContentTemplate = container?.ContentTemplate;
SelectedContent = container?.Content;
}

2
src/Avalonia.Controls/TreeView.cs

@ -79,7 +79,7 @@ namespace Avalonia.Controls
/// Gets the <see cref="ITreeItemContainerGenerator"/> for the tree view.
/// </summary>
public new ITreeItemContainerGenerator ItemContainerGenerator =>
(ITreeItemContainerGenerator)base.ItemContainerGenerator!;
(ITreeItemContainerGenerator)base.ItemContainerGenerator;
/// <summary>
/// Gets or sets a value indicating whether to automatically scroll to newly selected items.

2
src/Avalonia.Controls/TreeViewItem.cs

@ -89,7 +89,7 @@ namespace Avalonia.Controls
/// Gets the <see cref="ITreeItemContainerGenerator"/> for the tree view.
/// </summary>
public new ITreeItemContainerGenerator ItemContainerGenerator =>
(ITreeItemContainerGenerator)base.ItemContainerGenerator!;
(ITreeItemContainerGenerator)base.ItemContainerGenerator;
/// <inheritdoc/>
protected override IItemContainerGenerator CreateItemContainerGenerator() => CreateTreeItemContainerGenerator<TreeViewItem>();

Loading…
Cancel
Save