Skip to content

Commit bf61448

Browse files
authored
Obsolete platform-specific ListView APIs (#28758)
* Obsolete platform-specific ListView APIs * Some more * Fix build errors * Delete test for now obsoleted APIs * Revert "Delete test for now obsoleted APIs" This reverts commit eede97a. * Suppress XAML deprecation warnings
1 parent 671cdc4 commit bf61448

File tree

11 files changed

+70
-14
lines changed

11 files changed

+70
-14
lines changed

src/Controls/samples/Controls.Sample/Maui.Controls.Sample.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<RootNamespace>Maui.Controls.Sample</RootNamespace>
1111
<AssemblyName>Maui.Controls.Sample</AssemblyName>
1212
<IsPackable>false</IsPackable>
13-
<NoWarn>$(NoWarn);CA1416;CS0618</NoWarn>
13+
<NoWarn>$(NoWarn);CA1416;CS0618;XC0618</NoWarn>
1414
<Nullable>enable</Nullable>
1515
<!-- Disable multi-RID builds to workaround a parallel build issue -->
1616
<RuntimeIdentifier Condition="$(TargetFramework.Contains('-maccatalyst'))">maccatalyst-x64</RuntimeIdentifier>

src/Controls/src/Core/Compatibility/Handlers/ListView/Android/ListViewRenderer.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,11 @@ public class ListViewRenderer : ViewRenderer<ListView, AListView>
2222
{
2323
#pragma warning disable CS0618 // Type or member is obsolete
2424
public static PropertyMapper<ListView, ListViewRenderer> Mapper =
25-
#pragma warning restore CS0618 // Type or member is obsolete
26-
#pragma warning disable CS0618 // Type or member is obsolete
2725
new PropertyMapper<ListView, ListViewRenderer>(VisualElementRendererMapper);
2826
#pragma warning restore CS0618 // Type or member is obsolete
2927

3028
#pragma warning disable CS0618 // Type or member is obsolete
3129
public static CommandMapper<ListView, ListViewRenderer> CommandMapper =
32-
#pragma warning restore CS0618 // Type or member is obsolete
33-
#pragma warning disable CS0618 // Type or member is obsolete
3430
new CommandMapper<ListView, ListViewRenderer>(VisualElementRendererCommandMapper);
3531
#pragma warning restore CS0618 // Type or member is obsolete
3632

@@ -179,7 +175,9 @@ protected override void OnElementChanged(ElementChangedEventArgs<ListView> e)
179175
nativeListView.DividerHeight = 0;
180176
nativeListView.Focusable = false;
181177
nativeListView.DescendantFocusability = DescendantFocusability.AfterDescendants;
178+
#pragma warning disable CS0618 // Type or member is obsolete
182179
nativeListView.Adapter = _adapter = e.NewElement.IsGroupingEnabled && e.NewElement.OnThisPlatform().IsFastScrollEnabled() ? new GroupedListViewAdapter(Context, nativeListView, e.NewElement) : new ListViewAdapter(Context, nativeListView, e.NewElement);
180+
#pragma warning restore CS0618 // Type or member is obsolete
183181
_adapter.HeaderView = _headerView;
184182
_adapter.FooterView = _footerView;
185183
_adapter.IsAttachedToWindow = _isAttached;
@@ -526,7 +524,9 @@ void UpdateFastScrollEnabled()
526524
{
527525
if (Control != null)
528526
{
527+
#pragma warning disable CS0618 // Type or member is obsolete
529528
Control.FastScrollEnabled = Element.OnThisPlatform().IsFastScrollEnabled();
529+
#pragma warning restore CS0618 // Type or member is obsolete
530530
}
531531
}
532532

src/Controls/src/Core/Compatibility/Handlers/ListView/Windows/ListViewRenderer.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -505,6 +505,7 @@ void UpdateSelectionMode()
505505

506506
void UpdateWindowsSpecificSelectionMode()
507507
{
508+
#pragma warning disable CS0618 // Type or member is obsolete
508509
if (Element.OnThisPlatform().GetSelectionMode() == PlatformConfiguration.WindowsSpecific.ListViewSelectionMode.Accessible)
509510
{
510511
// Using Tapped will disable the ability to use the Enter key
@@ -539,6 +540,7 @@ void UpdateWindowsSpecificSelectionMode()
539540
List.ItemClick -= OnListItemClicked;
540541
}
541542
}
543+
#pragma warning restore CS0618 // Type or member is obsolete
542544
}
543545

544546
void UpdateVerticalScrollBarVisibility()

src/Controls/src/Core/Compatibility/Handlers/ListView/iOS/CellRenderer.cs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,11 @@ public class CellRenderer : ElementHandler<Cell, UITableViewCell>, IRegisterable
1919

2020
#pragma warning disable CS0618 // Type or member is obsolete
2121
public static PropertyMapper<Cell, CellRenderer> Mapper =
22-
#pragma warning restore CS0618 // Type or member is obsolete
23-
#pragma warning disable CS0618 // Type or member is obsolete
2422
new PropertyMapper<Cell, CellRenderer>(ElementHandler.ElementMapper);
2523
#pragma warning restore CS0618 // Type or member is obsolete
2624

2725
#pragma warning disable CS0618 // Type or member is obsolete
2826
public static CommandMapper<Cell, CellRenderer> CommandMapper =
29-
#pragma warning restore CS0618 // Type or member is obsolete
30-
#pragma warning disable CS0618 // Type or member is obsolete
3127
new CommandMapper<Cell, CellRenderer>(ElementHandler.ElementCommandMapper);
3228
#pragma warning restore CS0618 // Type or member is obsolete
3329
WeakReference<UITableView>? _tableView;
@@ -129,7 +125,9 @@ protected void UpdateBackground(UITableViewCell tableViewCell, Cell cell)
129125
var uiBgColor = UITableView.Appearance.BackgroundColor ?? _defaultCellBgColor;
130126

131127
#if __MOBILE__
128+
#pragma warning disable CS0618 // Type or member is obsolete
132129
var defaultBgColor = cell.On<PlatformConfiguration.iOS>().DefaultBackgroundColor();
130+
#pragma warning restore CS0618 // Type or member is obsolete
133131
#else
134132
var defaultBgColor = cell.On<PlatformConfiguration.macOS>().DefaultBackgroundColor();
135133
#endif
@@ -139,7 +137,6 @@ protected void UpdateBackground(UITableViewCell tableViewCell, Cell cell)
139137
}
140138
else
141139
{
142-
#pragma warning disable CS0618 // Type or member is obsolete
143140
#pragma warning disable CS0618 // Type or member is obsolete
144141
if (cell.GetIsGroupHeader<ItemsView<Cell>, Cell>())
145142
{
@@ -150,7 +147,6 @@ protected void UpdateBackground(UITableViewCell tableViewCell, Cell cell)
150147
if (cell.RealParent is VisualElement element && element.BackgroundColor != null)
151148
uiBgColor = element.BackgroundColor.ToPlatform();
152149
}
153-
#pragma warning restore CS0618 // Type or member is obsolete
154150
#pragma warning restore CS0618 // Type or member is obsolete
155151
}
156152

src/Controls/src/Core/Compatibility/Handlers/ListView/iOS/ListViewRenderer.cs

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -667,10 +667,12 @@ void InsertRows(int newStartingIndex, int newItemsCount, int section)
667667
Control.EndUpdates();
668668
});
669669

670+
#pragma warning disable CS0618 // Type or member is obsolete
670671
if (Element.OnThisPlatform().RowAnimationsEnabled())
671672
action.Invoke();
672673
else
673674
PerformWithoutAnimation(() => { action.Invoke(); });
675+
#pragma warning restore CS0618 // Type or member is obsolete
674676
}
675677

676678
void DeleteRows(int oldStartingIndex, int oldItemsCount, int section)
@@ -682,10 +684,12 @@ void DeleteRows(int oldStartingIndex, int oldItemsCount, int section)
682684
Control.EndUpdates();
683685
});
684686

687+
#pragma warning disable CS0618 // Type or member is obsolete
685688
if (Element.OnThisPlatform().RowAnimationsEnabled())
686689
action.Invoke();
687690
else
688691
PerformWithoutAnimation(() => { action.Invoke(); });
692+
#pragma warning restore CS0618 // Type or member is obsolete
689693
}
690694

691695
void MoveRows(int newStartingIndex, int oldStartingIndex, int oldItemsCount, int section)
@@ -709,10 +713,12 @@ void MoveRows(int newStartingIndex, int oldStartingIndex, int oldItemsCount, int
709713
Control.EndUpdates();
710714
});
711715

716+
#pragma warning disable CS0618 // Type or member is obsolete
712717
if (Element.OnThisPlatform().RowAnimationsEnabled())
713718
action.Invoke();
714719
else
715720
PerformWithoutAnimation(() => { action.Invoke(); });
721+
#pragma warning restore CS0618 // Type or member is obsolete
716722
}
717723

718724
void ReloadRows(int oldStartingIndex, int oldItemsCount, int section)
@@ -724,18 +730,22 @@ void ReloadRows(int oldStartingIndex, int oldItemsCount, int section)
724730
Control.EndUpdates();
725731
});
726732

733+
#pragma warning disable CS0618 // Type or member is obsolete
727734
if (Element.OnThisPlatform().RowAnimationsEnabled())
728735
action.Invoke();
729736
else
730737
PerformWithoutAnimation(() => { action.Invoke(); });
738+
#pragma warning restore CS0618 // Type or member is obsolete
731739
}
732740

733741
void ReloadData()
734742
{
743+
#pragma warning disable CS0618 // Type or member is obsolete
735744
if (Element.OnThisPlatform().RowAnimationsEnabled())
736745
Control.ReloadData();
737746
else
738747
PerformWithoutAnimation(() => { Control.ReloadData(); });
748+
#pragma warning restore CS0618 // Type or member is obsolete
739749
}
740750

741751
void InvalidateCellCache()
@@ -1174,6 +1184,7 @@ public override UITableViewCell GetCell(UITableView tableView, NSIndexPath index
11741184

11751185
SetupSelection(platformCell, tableView);
11761186

1187+
#pragma warning disable CS0618 // Type or member is obsolete
11771188
if (list.IsSet(Specifics.SeparatorStyleProperty))
11781189
{
11791190
if (list.OnThisPlatform().GetSeparatorStyle() == SeparatorStyle.FullWidth)
@@ -1183,6 +1194,7 @@ public override UITableViewCell GetCell(UITableView tableView, NSIndexPath index
11831194
platformCell.PreservesSuperviewLayoutMargins = false;
11841195
}
11851196
}
1197+
#pragma warning restore CS0618 // Type or member is obsolete
11861198
var bgColor = tableView.IndexPathForSelectedRow != null && tableView.IndexPathForSelectedRow.Equals(indexPath) ? UIColor.Clear : DefaultBackgroundColor;
11871199
SetCellBackgroundColor(platformCell, bgColor);
11881200
PreserveActivityIndicatorState(cell);
@@ -1411,10 +1423,12 @@ public void UpdateGrouping()
14111423
if (!_list.TryGetTarget(out var list))
14121424
return;
14131425

1426+
#pragma warning disable CS0618 // Type or member is obsolete
14141427
if (list.OnThisPlatform().RowAnimationsEnabled())
14151428
uiTableView.ReloadData();
14161429
else
14171430
PerformWithoutAnimation(uiTableView.ReloadData);
1431+
#pragma warning restore CS0618 // Type or member is obsolete
14181432
}
14191433

14201434
public void DetermineEstimatedRowHeight()
@@ -1497,10 +1511,12 @@ void OnShortNamesCollectionChanged(object sender, NotifyCollectionChangedEventAr
14971511
return;
14981512
if (!_list.TryGetTarget(out var list))
14991513
return;
1514+
#pragma warning disable CS0618 // Type or member is obsolete
15001515
if (list.OnThisPlatform().RowAnimationsEnabled())
15011516
uiTableView.ReloadSectionIndexTitles();
15021517
else
15031518
PerformWithoutAnimation(uiTableView.ReloadSectionIndexTitles);
1519+
#pragma warning restore CS0618 // Type or member is obsolete
15041520
}
15051521

15061522
static void SetCellBackgroundColor(UITableViewCell cell, UIColor color)
@@ -1664,12 +1680,10 @@ internal sealed class FormsUITableViewController : UITableViewController
16641680

16651681
#pragma warning disable CS0618 // Type or member is obsolete
16661682
public FormsUITableViewController(ListView element, bool usingLargeTitles)
1667-
#pragma warning restore CS0618 // Type or member is obsolete
16681683
: base(element.OnThisPlatform().GetGroupHeaderStyle() == GroupHeaderStyle.Plain
16691684
? UITableViewStyle.Plain
16701685
: UITableViewStyle.Grouped)
16711686
{
1672-
#pragma warning disable CS0618 // Type or member is obsolete
16731687
TableView.CellLayoutMarginsFollowReadableWidth = false;
16741688
#pragma warning restore CS0618 // Type or member is obsolete
16751689

src/Controls/src/Core/PlatformConfiguration/AndroidSpecific/ListView.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,34 @@
11
#nullable disable
22
namespace Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific
33
{
4+
using System;
45
using FormsElement = Maui.Controls.ListView;
56

67
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific/ListView.xml" path="Type[@FullName='Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific.ListView']/Docs/*" />
8+
[Obsolete("With the deprecation of ListView, this class is obsolete. Please use CollectionView instead.")]
79
public static class ListView
810
{
911
/// <summary>Bindable property for <see cref="IsFastScrollEnabled"/>.</summary>
12+
[Obsolete("With the deprecation of ListView, this property is obsolete. Please use CollectionView instead.")]
1013
public static readonly BindableProperty IsFastScrollEnabledProperty = BindableProperty.Create("IsFastScrollEnabled", typeof(bool), typeof(ListView), false);
1114

1215
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific/ListView.xml" path="//Member[@MemberName='GetIsFastScrollEnabled']/Docs/*" />
16+
[Obsolete("With the deprecation of ListView, this property is obsolete. Please use CollectionView instead.")]
1317
public static bool GetIsFastScrollEnabled(BindableObject element)
1418
{
1519
return (bool)element.GetValue(IsFastScrollEnabledProperty);
1620
}
1721

1822
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific/ListView.xml" path="//Member[@MemberName='SetIsFastScrollEnabled'][1]/Docs/*" />
23+
[Obsolete("With the deprecation of ListView, this property is obsolete. Please use CollectionView instead.")]
1924
public static void SetIsFastScrollEnabled(BindableObject element, bool value)
2025
{
2126
element.SetValue(IsFastScrollEnabledProperty, value);
2227
}
2328

2429
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific/ListView.xml" path="//Member[@MemberName='IsFastScrollEnabled']/Docs/*" />
2530
#pragma warning disable CS0618 // Type or member is obsolete
31+
[Obsolete("With the deprecation of ListView, this property is obsolete. Please use CollectionView instead.")]
2632
public static bool IsFastScrollEnabled(this IPlatformElementConfiguration<Android, FormsElement> config)
2733
#pragma warning restore CS0618 // Type or member is obsolete
2834
{
@@ -32,6 +38,7 @@ public static bool IsFastScrollEnabled(this IPlatformElementConfiguration<Androi
3238
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific/ListView.xml" path="//Member[@MemberName='SetIsFastScrollEnabled'][2]/Docs/*" />
3339
#pragma warning disable CS0618 // Type or member is obsolete
3440
#pragma warning disable CS0618 // Type or member is obsolete
41+
[Obsolete("With the deprecation of ListView, this property is obsolete. Please use CollectionView instead.")]
3542
public static IPlatformElementConfiguration<Android, FormsElement> SetIsFastScrollEnabled(this IPlatformElementConfiguration<Android, FormsElement> config, bool value)
3643
#pragma warning restore CS0618 // Type or member is obsolete
3744
#pragma warning restore CS0618 // Type or member is obsolete

src/Controls/src/Core/PlatformConfiguration/AndroidSpecific/ViewCell.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,12 @@ namespace Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific
55
using FormsCell = Maui.Controls.Cell;
66

77
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific/ViewCell.xml" path="Type[@FullName='Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific.ViewCell']/Docs/*" />
8+
[Obsolete("With the deprecation of ListView, this class is obsolete. Please use CollectionView instead.")]
89
public static class ViewCell
910
{
1011
/// <summary>Bindable property for attached property <c>IsContextActionsLegacyModeEnabled</c>.</summary>
1112
#pragma warning disable CS0618 // Type or member is obsolete
13+
[Obsolete("With the deprecation of ListView, this property is obsolete. Please use CollectionView instead.")]
1214
public static readonly BindableProperty IsContextActionsLegacyModeEnabledProperty = BindableProperty.Create("IsContextActionsLegacyModeEnabled", typeof(bool), typeof(Maui.Controls.ViewCell), false, propertyChanged: OnIsContextActionsLegacyModeEnabledPropertyChanged);
1315
#pragma warning restore CS0618 // Type or member is obsolete
1416

@@ -21,19 +23,22 @@ private static void OnIsContextActionsLegacyModeEnabledPropertyChanged(BindableO
2123
}
2224

2325
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific/ViewCell.xml" path="//Member[@MemberName='GetIsContextActionsLegacyModeEnabled'][1]/Docs/*" />
26+
[Obsolete("With the deprecation of ListView, this class is obsolete. Please use CollectionView instead.")]
2427
public static bool GetIsContextActionsLegacyModeEnabled(BindableObject element)
2528
{
2629
return (bool)element.GetValue(IsContextActionsLegacyModeEnabledProperty);
2730
}
2831

2932
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific/ViewCell.xml" path="//Member[@MemberName='SetIsContextActionsLegacyModeEnabled'][1]/Docs/*" />
33+
[Obsolete("With the deprecation of ListView, this class is obsolete. Please use CollectionView instead.")]
3034
public static void SetIsContextActionsLegacyModeEnabled(BindableObject element, bool value)
3135
{
3236
element.SetValue(IsContextActionsLegacyModeEnabledProperty, value);
3337
}
3438

3539
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific/ViewCell.xml" path="//Member[@MemberName='GetIsContextActionsLegacyModeEnabled'][2]/Docs/*" />
3640
#pragma warning disable CS0618 // Type or member is obsolete
41+
[Obsolete("With the deprecation of ListView, this class is obsolete. Please use CollectionView instead.")]
3742
public static bool GetIsContextActionsLegacyModeEnabled(this IPlatformElementConfiguration<Android, FormsCell> config)
3843
#pragma warning restore CS0618 // Type or member is obsolete
3944
{
@@ -43,6 +48,7 @@ public static bool GetIsContextActionsLegacyModeEnabled(this IPlatformElementCon
4348
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific/ViewCell.xml" path="//Member[@MemberName='SetIsContextActionsLegacyModeEnabled'][2]/Docs/*" />
4449
#pragma warning disable CS0618 // Type or member is obsolete
4550
#pragma warning disable CS0618 // Type or member is obsolete
51+
[Obsolete("With the deprecation of ListView, this class is obsolete. Please use CollectionView instead.")]
4652
public static IPlatformElementConfiguration<Android, FormsCell> SetIsContextActionsLegacyModeEnabled(this IPlatformElementConfiguration<Android, FormsCell> config, bool value)
4753
#pragma warning restore CS0618 // Type or member is obsolete
4854
#pragma warning restore CS0618 // Type or member is obsolete

src/Controls/src/Core/PlatformConfiguration/WindowsSpecific/ListView.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,29 +6,34 @@ namespace Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific
66
using FormsElement = Maui.Controls.ListView;
77

88
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific/ListView.xml" path="Type[@FullName='Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific.ListView']/Docs/*" />
9+
[Obsolete("With the deprecation of ListView, this class is obsolete. Please use CollectionView instead.")]
910
public static class ListView
1011
{
1112
#region SelectionMode
1213

1314
/// <summary>Bindable property for <see cref="SelectionMode"/>.</summary>
15+
[Obsolete("With the deprecation of ListView, this property is obsolete. Please use CollectionView instead.")]
1416
public static readonly BindableProperty SelectionModeProperty =
1517
BindableProperty.CreateAttached("WindowsSelectionMode", typeof(ListViewSelectionMode),
1618
typeof(ListView), ListViewSelectionMode.Accessible);
1719

1820
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific/ListView.xml" path="//Member[@MemberName='GetSelectionMode'][1]/Docs/*" />
21+
[Obsolete("With the deprecation of ListView, this property is obsolete. Please use CollectionView instead.")]
1922
public static ListViewSelectionMode GetSelectionMode(BindableObject element)
2023
{
2124
return (ListViewSelectionMode)element.GetValue(SelectionModeProperty);
2225
}
2326

2427
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific/ListView.xml" path="//Member[@MemberName='SetSelectionMode'][1]/Docs/*" />
28+
[Obsolete("With the deprecation of ListView, this property is obsolete. Please use CollectionView instead.")]
2529
public static void SetSelectionMode(BindableObject element, ListViewSelectionMode value)
2630
{
2731
element.SetValue(SelectionModeProperty, value);
2832
}
2933

3034
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific/ListView.xml" path="//Member[@MemberName='GetSelectionMode'][2]/Docs/*" />
3135
#pragma warning disable CS0618 // Type or member is obsolete
36+
[Obsolete("With the deprecation of ListView, this property is obsolete. Please use CollectionView instead.")]
3237
public static ListViewSelectionMode GetSelectionMode(this IPlatformElementConfiguration<Windows, FormsElement> config)
3338
#pragma warning restore CS0618 // Type or member is obsolete
3439
{
@@ -37,6 +42,7 @@ public static ListViewSelectionMode GetSelectionMode(this IPlatformElementConfig
3742

3843
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific/ListView.xml" path="//Member[@MemberName='SetSelectionMode'][2]/Docs/*" />
3944
#pragma warning disable CS0618 // Type or member is obsolete
45+
[Obsolete("With the deprecation of ListView, this property is obsolete. Please use CollectionView instead.")]
4046
public static IPlatformElementConfiguration<Windows, FormsElement> SetSelectionMode(
4147
#pragma warning restore CS0618 // Type or member is obsolete
4248
#pragma warning disable CS0618 // Type or member is obsolete
@@ -51,6 +57,7 @@ public static IPlatformElementConfiguration<Windows, FormsElement> SetSelectionM
5157
}
5258

5359
/// <include file="../../../../docs/Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific/ListViewSelectionMode.xml" path="Type[@FullName='Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific.ListViewSelectionMode']/Docs/*" />
60+
[Obsolete("With the deprecation of ListView, this enum is obsolete. Please use CollectionView instead.")]
5461
public enum ListViewSelectionMode
5562
{
5663
/// <summary>

0 commit comments

Comments
 (0)