diff --git a/.github/workflows/benchmarks.yml b/.github/workflows/benchmarks.yml
index 087d58ae..5a4c60f8 100644
--- a/.github/workflows/benchmarks.yml
+++ b/.github/workflows/benchmarks.yml
@@ -13,7 +13,7 @@ on:
- '*'
env:
- LATEST_NET_VERSION: '9.0.x'
+ LATEST_NET_VERSION: '10.0.x'
PathToCommunityToolkitBenchmarkCsproj: 'src/CommunityToolkit.Maui.Markup.Benchmarks/CommunityToolkit.Maui.Markup.Benchmarks.csproj'
concurrency:
@@ -42,7 +42,7 @@ jobs:
uses: actions/setup-dotnet@v5
with:
dotnet-version: ${{ env.LATEST_NET_VERSION }}
- dotnet-quality: 'ga'
+ dotnet-quality: 'preview'
- name: Install .NET MAUI Workload
run: |
diff --git a/.github/workflows/dotnet-build.yml b/.github/workflows/dotnet-build.yml
index 1d7cc788..aed2fe15 100644
--- a/.github/workflows/dotnet-build.yml
+++ b/.github/workflows/dotnet-build.yml
@@ -18,7 +18,7 @@ env:
# When we create a tag, we set the NuGet version to the tag number, the below values are only for PR builds.
CurrentSemanticVersionBase: '99.0.0' # Only used for PR builds
NugetPackageVersion: '99.0.0-preview${{ github.run_number }}' # Only used for PR builds
- NET_VERSION: '9.0.x'
+ NET_VERSION: '10.0.x'
RunPoliCheck: false
PathToLibrarySolution: 'src/CommunityToolkit.Maui.Markup.sln'
PathToSamplesSolution: 'samples/CommunityToolkit.Maui.Markup.Sample.sln'
@@ -26,7 +26,7 @@ env:
PathToCommunityToolkitSampleCsproj: 'samples/CommunityToolkit.Maui.Markup.Sample/CommunityToolkit.Maui.Markup.Sample.csproj'
PathToCommunityToolkitUnitTestCsproj: 'src/CommunityToolkit.Maui.Markup.UnitTests/CommunityToolkit.Maui.Markup.UnitTests.csproj'
PathToCommunityToolkitSourceGeneratorsCsproj: 'src/CommunityToolkit.Maui.Markup.SourceGenerators/CommunityToolkit.Maui.Markup.SourceGenerators.csproj'
- Xcode_Version: '16.3'
+ Xcode_Version: '26.0.1'
ShouldCheckDependencies: true
concurrency:
@@ -55,7 +55,7 @@ jobs:
uses: actions/setup-dotnet@v5
with:
dotnet-version: ${{ env.NET_VERSION }}
- dotnet-quality: 'ga'
+ dotnet-quality: 'preview'
- uses: actions/setup-java@v5
with:
@@ -112,7 +112,7 @@ jobs:
uses: actions/setup-dotnet@v5
with:
dotnet-version: ${{ env.NET_VERSION }}
- dotnet-quality: 'ga'
+ dotnet-quality: 'preview'
- uses: actions/setup-java@v5
with:
@@ -206,7 +206,7 @@ jobs:
uses: actions/setup-dotnet@v5
with:
dotnet-version: ${{ env.NET_VERSION }}
- dotnet-quality: 'ga'
+ dotnet-quality: 'preview'
- name: Download NuGet List
uses: actions/download-artifact@v5
@@ -259,7 +259,7 @@ jobs:
uses: actions/setup-dotnet@v5
with:
dotnet-version: ${{ env.NET_VERSION }}
- dotnet-quality: 'ga'
+ dotnet-quality: 'preview'
- name: Download signed packages for ${{ matrix.platform }}
uses: actions/download-artifact@v5
diff --git a/Directory.Build.props b/Directory.Build.props
index 475df0c8..f92a4841 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -2,8 +2,8 @@
enable
- NETSDK1023
- net9.0
+ NETSDK1023;XCODE_26_0_PREVIEW
+ net10.0
preview
enable
true
@@ -20,8 +20,8 @@
all
- 9.0.60
- 10.0.0
+ 10.0.0-rc.2.25504.7
+ 11.0.0
11.2.0
true
true
@@ -91,7 +91,7 @@
IL2090,IL2091,IL2092,IL2093,IL2094,IL2095,IL2096,IL2097,IL2098,IL2099,
IL2100,IL2101,IL2102,IL2103,IL2104,IL2105,IL2106,IL2107,IL2108,IL2109,
IL2110,IL2111,IL2112,IL2113,IL2114,IL2115,IL2116,IL2117,IL2118,IL2119,
- IL2120,IL2121,IL2122,
+ IL2120,IL2121,IL2122,IL2123,
IL3050,IL3051,IL3052,IL3053,IL3054,IL3055,IL3056,
RS1038
diff --git a/global.json b/global.json
index 478da3ed..44fce943 100644
--- a/global.json
+++ b/global.json
@@ -1,7 +1,7 @@
{
"sdk": {
- "version": "9.0.203",
+ "version": "10.0.100-rc.2.25502.107",
"rollForward": "latestFeature",
- "allowPrerelease": false
+ "allowPrerelease": true
}
}
\ No newline at end of file
diff --git a/samples/CommunityToolkit.Maui.Markup.Sample/AppShell.cs b/samples/CommunityToolkit.Maui.Markup.Sample/AppShell.cs
index 158749da..42c0bd8a 100644
--- a/samples/CommunityToolkit.Maui.Markup.Sample/AppShell.cs
+++ b/samples/CommunityToolkit.Maui.Markup.Sample/AppShell.cs
@@ -2,7 +2,6 @@
namespace CommunityToolkit.Maui.Markup.Sample;
-[RequiresUnreferencedCode("SettingsViewModel Calls CommunityToolkit.Maui.Behaviors.NumericValidationBehavior.NumericValidationBehavior()")]
partial class AppShell : Shell
{
static readonly ReadOnlyDictionary pageRouteMappingDictionary = new Dictionary(
diff --git a/samples/CommunityToolkit.Maui.Markup.Sample/CommunityToolkit.Maui.Markup.Sample.csproj b/samples/CommunityToolkit.Maui.Markup.Sample/CommunityToolkit.Maui.Markup.Sample.csproj
index 5537b126..58aa1cfd 100644
--- a/samples/CommunityToolkit.Maui.Markup.Sample/CommunityToolkit.Maui.Markup.Sample.csproj
+++ b/samples/CommunityToolkit.Maui.Markup.Sample/CommunityToolkit.Maui.Markup.Sample.csproj
@@ -35,11 +35,13 @@
CsWinRT1028
-
-
-
-
- true
+
+
+
+ false
+ true
+ partial
@@ -75,4 +77,8 @@
+
+
+
+
diff --git a/samples/CommunityToolkit.Maui.Markup.Sample/HotReloadHandler.cs b/samples/CommunityToolkit.Maui.Markup.Sample/HotReloadHandler.cs
index 47d516a7..3657e01f 100644
--- a/samples/CommunityToolkit.Maui.Markup.Sample/HotReloadHandler.cs
+++ b/samples/CommunityToolkit.Maui.Markup.Sample/HotReloadHandler.cs
@@ -2,7 +2,6 @@
using System.Diagnostics.CodeAnalysis;
namespace CommunityToolkit.Maui.Markup.Sample;
-[RequiresUnreferencedCode("AppShell.GetRoute Requires Unreferenced Code")]
class HotReloadHandler : ICommunityToolkitHotReloadHandler
{
public async void OnHotReload(IReadOnlyList types)
diff --git a/samples/CommunityToolkit.Maui.Markup.Sample/MauiProgram.cs b/samples/CommunityToolkit.Maui.Markup.Sample/MauiProgram.cs
index 37af4d66..7646a4a1 100644
--- a/samples/CommunityToolkit.Maui.Markup.Sample/MauiProgram.cs
+++ b/samples/CommunityToolkit.Maui.Markup.Sample/MauiProgram.cs
@@ -1,10 +1,8 @@
-using System.Diagnostics.CodeAnalysis;
-using Microsoft.Extensions.Http.Resilience;
+using Microsoft.Extensions.Http.Resilience;
using Polly;
using Refit;
namespace CommunityToolkit.Maui.Markup.Sample;
-[RequiresUnreferencedCode("SettingsViewModel Calls CommunityToolkit.Maui.Behaviors.NumericValidationBehavior.NumericValidationBehavior()")]
public class MauiProgram
{
public static MauiApp CreateMauiApp()
diff --git a/samples/CommunityToolkit.Maui.Markup.Sample/Pages/NewsPage.cs b/samples/CommunityToolkit.Maui.Markup.Sample/Pages/NewsPage.cs
index 37503516..6d3ba6ef 100644
--- a/samples/CommunityToolkit.Maui.Markup.Sample/Pages/NewsPage.cs
+++ b/samples/CommunityToolkit.Maui.Markup.Sample/Pages/NewsPage.cs
@@ -1,13 +1,10 @@
-using System.Diagnostics.CodeAnalysis;
-
-namespace CommunityToolkit.Maui.Markup.Sample.Pages;
+namespace CommunityToolkit.Maui.Markup.Sample.Pages;
sealed partial class NewsPage : BaseContentPage
{
readonly IDispatcher dispatcher;
readonly RefreshView refreshView;
- [RequiresUnreferencedCode("AppShell.GetRoute Requires Unreferenced Code")]
public NewsPage(IDispatcher dispatcher,
NewsViewModel newsViewModel) : base(newsViewModel, "Top Stories")
{
@@ -49,7 +46,6 @@ protected override void OnAppearing()
static bool IsNullOrEmpty(in IEnumerable? enumerable) => !enumerable?.GetEnumerator().MoveNext() ?? true;
}
- [RequiresUnreferencedCode("AppShell.GetRoute Requires Unreferenced Code")]
async void HandleSelectionChanged(object? sender, SelectionChangedEventArgs e)
{
ArgumentNullException.ThrowIfNull(sender);
@@ -65,13 +61,13 @@ async void HandleSelectionChanged(object? sender, SelectionChangedEventArgs e)
}
else
{
- await DisplayAlert("Invalid Article", "ASK HN articles have no url", "OK");
+ await DisplayAlertAsync("Invalid Article", "ASK HN articles have no url", "OK");
}
}
}
async void HandlePullToRefreshFailed(object? sender, string message) =>
- await dispatcher.DispatchAsync(() => DisplayAlert("Refresh Failed", message, "OK"));
+ await dispatcher.DispatchAsync(() => DisplayAlertAsync("Refresh Failed", message, "OK"));
bool TryRefreshCollectionView()
{
@@ -86,14 +82,12 @@ bool TryRefreshCollectionView()
void HandleNumberOfTopStoriesToFetchChanged(object? sender, int e) => TryRefreshCollectionView();
- [RequiresUnreferencedCode("AppShell.GetRoute Requires Unreferenced Code")]
Task NavigateToSettingsPage() => dispatcher.DispatchAsync(() =>
{
var route = AppShell.GetRoute();
return Shell.Current.GoToAsync(route);
});
- [RequiresUnreferencedCode("AppShell.GetRoute Requires Unreferenced Code")]
Task NavigateToNewsDetailPage(StoryModel storyModel) => dispatcher.DispatchAsync(() =>
{
var route = AppShell.GetRoute();
diff --git a/samples/CommunityToolkit.Maui.Markup.Sample/Pages/SettingsPage.cs b/samples/CommunityToolkit.Maui.Markup.Sample/Pages/SettingsPage.cs
index 45875e77..261c2247 100644
--- a/samples/CommunityToolkit.Maui.Markup.Sample/Pages/SettingsPage.cs
+++ b/samples/CommunityToolkit.Maui.Markup.Sample/Pages/SettingsPage.cs
@@ -1,11 +1,9 @@
-using System.Diagnostics.CodeAnalysis;
-using Microsoft.Maui.Layouts;
+using Microsoft.Maui.Layouts;
namespace CommunityToolkit.Maui.Markup.Sample.Pages;
sealed partial class SettingsPage : BaseContentPage
{
- [RequiresUnreferencedCode("Calls CommunityToolkit.Maui.Behaviors.NumericValidationBehavior.NumericValidationBehavior()")]
public SettingsPage(SettingsViewModel settingsViewModel) : base(settingsViewModel, "Settings")
{
Content = new AbsoluteLayout
diff --git a/samples/CommunityToolkit.Maui.Markup.Sample/Platforms/MacCatalyst/AppDelegate.cs b/samples/CommunityToolkit.Maui.Markup.Sample/Platforms/MacCatalyst/AppDelegate.cs
index 8ed035bf..45ddaa37 100644
--- a/samples/CommunityToolkit.Maui.Markup.Sample/Platforms/MacCatalyst/AppDelegate.cs
+++ b/samples/CommunityToolkit.Maui.Markup.Sample/Platforms/MacCatalyst/AppDelegate.cs
@@ -1,9 +1,7 @@
-using System.Diagnostics.CodeAnalysis;
-using Foundation;
+using Foundation;
namespace CommunityToolkit.Maui.Markup.Sample;
[Register(nameof(AppDelegate))]
-[RequiresUnreferencedCode("SettingsViewModel Calls CommunityToolkit.Maui.Behaviors.NumericValidationBehavior.NumericValidationBehavior()")]
public class AppDelegate : MauiUIApplicationDelegate
{
protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
diff --git a/samples/CommunityToolkit.Maui.Markup.Sample/Platforms/iOS/AppDelegate.cs b/samples/CommunityToolkit.Maui.Markup.Sample/Platforms/iOS/AppDelegate.cs
index 8ed035bf..45ddaa37 100644
--- a/samples/CommunityToolkit.Maui.Markup.Sample/Platforms/iOS/AppDelegate.cs
+++ b/samples/CommunityToolkit.Maui.Markup.Sample/Platforms/iOS/AppDelegate.cs
@@ -1,9 +1,7 @@
-using System.Diagnostics.CodeAnalysis;
-using Foundation;
+using Foundation;
namespace CommunityToolkit.Maui.Markup.Sample;
[Register(nameof(AppDelegate))]
-[RequiresUnreferencedCode("SettingsViewModel Calls CommunityToolkit.Maui.Behaviors.NumericValidationBehavior.NumericValidationBehavior()")]
public class AppDelegate : MauiUIApplicationDelegate
{
protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
diff --git a/src/CommunityToolkit.Maui.Markup.UnitTests/BindableObjectExtensionsTests.cs b/src/CommunityToolkit.Maui.Markup.UnitTests/BindableObjectExtensionsTests.cs
index c1d1f6a2..2d6f5287 100644
--- a/src/CommunityToolkit.Maui.Markup.UnitTests/BindableObjectExtensionsTests.cs
+++ b/src/CommunityToolkit.Maui.Markup.UnitTests/BindableObjectExtensionsTests.cs
@@ -1,5 +1,4 @@
using System.Windows.Input;
-using BindableObjectViews;
using CommunityToolkit.Maui.Markup.UnitTests.Base;
using NUnit.Framework;
namespace CommunityToolkit.Maui.Markup.UnitTests
@@ -672,40 +671,40 @@ public void BindDefaultPropertyWithInlineTwoWayParameterizedConvertAndPositional
[Test]
public void BindCommandWithDefaults()
{
- var textCell = new TextCell();
+ var button = new Button();
var path = nameof(viewModel.Command);
- textCell.BindCommand(path);
+ button.BindCommand(path);
- BindingHelpers.AssertBindingExists(textCell, TextCell.CommandProperty, path);
- BindingHelpers.AssertBindingExists(textCell, TextCell.CommandParameterProperty);
+ BindingHelpers.AssertBindingExists(button, Button.CommandProperty, path);
+ BindingHelpers.AssertBindingExists(button, Button.CommandParameterProperty);
}
[Test]
public void BindCommandWithoutParameter()
{
- var textCell = new TextCell();
+ var button = new Button();
var path = nameof(viewModel.Command);
- textCell.BindCommand(path, parameterPath: null);
+ button.BindCommand(path, parameterPath: null);
- BindingHelpers.AssertBindingExists(textCell, TextCell.CommandProperty, path);
- Assert.That(BindingHelpers.GetBinding(textCell, TextCell.CommandParameterProperty), Is.Null);
+ BindingHelpers.AssertBindingExists(button, Button.CommandProperty, path);
+ Assert.That(BindingHelpers.GetBinding(button, Button.CommandParameterProperty), Is.Null);
}
[Test]
public void BindCommandWithPositionalParameters()
{
- var textCell = new TextCell();
+ var button = new Button();
object source = new ViewModel();
var path = nameof(viewModel.Command);
var parameterPath = nameof(viewModel.Id);
object parameterSource = new ViewModel();
- textCell.BindCommand(path, source, parameterPath, parameterSource);
+ button.BindCommand(path, source, parameterPath, parameterSource);
- BindingHelpers.AssertBindingExists(textCell, TextCell.CommandProperty, path, source: source);
- BindingHelpers.AssertBindingExists(textCell, TextCell.CommandParameterProperty, parameterPath, source: parameterSource);
+ BindingHelpers.AssertBindingExists(button, Button.CommandProperty, path, source: source);
+ BindingHelpers.AssertBindingExists(button, Button.CommandParameterProperty, parameterPath, source: parameterSource);
}
[Test]
@@ -747,7 +746,6 @@ public void SupportDerivedElements()
.Assign(out DerivedFromLabel assignDerivedFromLabel),
Is.InstanceOf());
- Assert.That(new DerivedFromTextCell().BindCommand(nameof(viewModel.Command)), Is.InstanceOf());
Assert.That(assignDerivedFromLabel, Is.InstanceOf());
});
}
@@ -803,8 +801,4 @@ sealed class ViewModel
class DerivedFromLabel : Label
{
}
-
- class DerivedFromTextCell : TextCell
- {
- }
}
\ No newline at end of file
diff --git a/src/CommunityToolkit.Maui.Markup.UnitTests/CommunityToolkit.Maui.Markup.UnitTests.csproj b/src/CommunityToolkit.Maui.Markup.UnitTests/CommunityToolkit.Maui.Markup.UnitTests.csproj
index da5ea552..3c0c4c4b 100644
--- a/src/CommunityToolkit.Maui.Markup.UnitTests/CommunityToolkit.Maui.Markup.UnitTests.csproj
+++ b/src/CommunityToolkit.Maui.Markup.UnitTests/CommunityToolkit.Maui.Markup.UnitTests.csproj
@@ -15,6 +15,7 @@
+
diff --git a/src/CommunityToolkit.Maui.Markup.UnitTests/DynamicResourceHandlerTests.cs b/src/CommunityToolkit.Maui.Markup.UnitTests/DynamicResourceHandlerTests.cs
index 3129c81a..8b47803f 100644
--- a/src/CommunityToolkit.Maui.Markup.UnitTests/DynamicResourceHandlerTests.cs
+++ b/src/CommunityToolkit.Maui.Markup.UnitTests/DynamicResourceHandlerTests.cs
@@ -1,5 +1,4 @@
using CommunityToolkit.Maui.Markup.UnitTests.Base;
-using CommunityToolkit.Maui.Markup.UnitTests.Mocks;
using NUnit.Framework;
namespace CommunityToolkit.Maui.Markup.UnitTests;
diff --git a/src/CommunityToolkit.Maui.Markup.UnitTests/ElementExtensionsTests.cs b/src/CommunityToolkit.Maui.Markup.UnitTests/ElementExtensionsTests.cs
index dbd8bf79..bf2e1833 100644
--- a/src/CommunityToolkit.Maui.Markup.UnitTests/ElementExtensionsTests.cs
+++ b/src/CommunityToolkit.Maui.Markup.UnitTests/ElementExtensionsTests.cs
@@ -1,5 +1,4 @@
using CommunityToolkit.Maui.Markup.UnitTests.Base;
-using CommunityToolkit.Maui.Markup.UnitTests.Mocks;
using NUnit.Framework;
namespace CommunityToolkit.Maui.Markup.UnitTests;
diff --git a/src/CommunityToolkit.Maui.Markup.UnitTests/TypedBindingExtensionsTests.cs b/src/CommunityToolkit.Maui.Markup.UnitTests/TypedBindingExtensionsTests.cs
index ae750fbd..f4651e71 100644
--- a/src/CommunityToolkit.Maui.Markup.UnitTests/TypedBindingExtensionsTests.cs
+++ b/src/CommunityToolkit.Maui.Markup.UnitTests/TypedBindingExtensionsTests.cs
@@ -51,15 +51,15 @@ public void BindCommandThrowsArgumentNullExceptionWhenParameterHandlersNull()
[Test]
public void BindCommandWithDefaults()
{
- var textCell = new TextCell
+ var textCell = new Button
{
BindingContext = viewModel
};
textCell.BindCommand(static (ViewModel vm) => vm.Command);
- BindingHelpers.AssertTypedBindingExists(textCell, TextCell.CommandProperty, BindingMode.Default, viewModel);
- Assert.That(BindingHelpers.GetBinding(textCell, TextCell.CommandParameterProperty), Is.Null);
+ BindingHelpers.AssertTypedBindingExists(textCell, Button.CommandProperty, BindingMode.Default, viewModel);
+ Assert.That(BindingHelpers.GetBinding(textCell, Button.CommandParameterProperty), Is.Null);
}
[Test]
@@ -67,7 +67,7 @@ public void BindCommandWithParameters()
{
ArgumentNullException.ThrowIfNull(viewModel);
- var textCell = new TextCell
+ var textCell = new Button
{
BindingContext = viewModel
};
@@ -78,8 +78,8 @@ public void BindCommandWithParameters()
parameterGetter: static (ViewModel vm) => vm.Id,
parameterBindingMode: BindingMode.OneWay);
- BindingHelpers.AssertTypedBindingExists(textCell, TextCell.CommandProperty, BindingMode.OneTime, viewModel);
- BindingHelpers.AssertTypedBindingExists(textCell, TextCell.CommandParameterProperty, BindingMode.OneWay, viewModel);
+ BindingHelpers.AssertTypedBindingExists(textCell, Button.CommandProperty, BindingMode.OneTime, viewModel);
+ BindingHelpers.AssertTypedBindingExists(textCell, Button.CommandParameterProperty, BindingMode.OneWay, viewModel);
Assert.Multiple(() =>
{
diff --git a/src/CommunityToolkit.Maui.Markup/DefaultBindableProperties.cs b/src/CommunityToolkit.Maui.Markup/DefaultBindableProperties.cs
index b3a79554..53cd26da 100644
--- a/src/CommunityToolkit.Maui.Markup/DefaultBindableProperties.cs
+++ b/src/CommunityToolkit.Maui.Markup/DefaultBindableProperties.cs
@@ -15,11 +15,7 @@ public static class DefaultBindableProperties
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(Border)}", Border.ContentProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(BoxView)}", BoxView.ColorProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(Button)}", Button.CommandProperty },
- { $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(CarouselPage)}", Page.TitleProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(CheckBox)}", CheckBox.IsCheckedProperty },
-#pragma warning disable CS0618
- { $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(ClickGestureRecognizer)}", ClickGestureRecognizer.CommandProperty },
-#pragma warning disable CS0618
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(CollectionView)}", CollectionView.ItemsSourceProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(ContentPage)}", Page.TitleProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(ContentPresenter)}", ContentPresenter.ContentProperty },
@@ -27,19 +23,27 @@ public static class DefaultBindableProperties
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(DatePicker)}", DatePicker.DateProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(Editor)}", Editor.TextProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(Entry)}", Entry.TextProperty },
+#pragma warning disable CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(EntryCell)}", EntryCell.TextProperty },
+#pragma warning restore CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(FileImageSource)}", FileImageSource.FileProperty },
+#pragma warning disable CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(Frame)}", Frame.ContentProperty },
+#pragma warning restore CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(FlyoutPage)}", FlyoutPage.IsPresentedProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(GraphicsView)}", GraphicsView.DrawableProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(HtmlWebViewSource)}", HtmlWebViewSource.HtmlProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(Image)}", Image.SourceProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(ImageButton)}", ImageButton.CommandProperty },
+#pragma warning disable CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(ImageCell)}", ImageCell.ImageSourceProperty },
+#pragma warning restore CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(IndicatorView)}", IndicatorView.ItemsSourceProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(ItemsView)}", ItemsView.ItemsSourceProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(Label)}", Label.TextProperty },
+#pragma warning disable CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(ListView)}", ListView.ItemsSourceProperty },
+#pragma warning restore CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(MenuFlyoutItem)}", MenuFlyoutItem.TextProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(MenuFlyoutSubItem)}", MenuFlyoutSubItem.TextProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(MenuItem)}", MenuItem.TextProperty },
@@ -65,14 +69,18 @@ public static class DefaultBindableProperties
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(Switch)}", Switch.IsToggledProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(SwipeItemView)}", SwipeItemView.ContentProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(SwipeView)}", SwipeView.ContentProperty },
+#pragma warning disable CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(SwitchCell)}", SwitchCell.OnProperty },
+#pragma warning restore CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(TabbedPage)}", Page.TitleProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(TableRoot)}", TableRoot.TitleProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(TableSection)}", TableSection.TitleProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(TableSectionBase)}", TableSectionBase.TitleProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(TapGestureRecognizer)}", TapGestureRecognizer.CommandProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(TemplatedPage)}", Page.TitleProperty },
+#pragma warning disable CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(TextCell)}", TextCell.TextProperty },
+#pragma warning restore CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(TemplatedView)}", TemplatedView.ControlTemplateProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(TimePicker)}", TimePicker.TimeProperty },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(ToolbarItem)}", ToolbarItem.CommandProperty },
@@ -85,10 +93,9 @@ public static class DefaultBindableProperties
static readonly Dictionary bindableObjectTypeDefaultCommandAndParameterProperties = new()
{ // Key: full type name of BindableObject, Value: command property and corresponding commandParameter property
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(Button)}", (Button.CommandProperty, Button.CommandParameterProperty) },
+#pragma warning disable CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(TextCell)}", (TextCell.CommandProperty, TextCell.CommandParameterProperty) },
-#pragma warning disable CS0618
- { $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(ClickGestureRecognizer)}", (ClickGestureRecognizer.CommandProperty, ClickGestureRecognizer.CommandParameterProperty) },
-#pragma warning restore CS0618
+#pragma warning restore CS0618 // Type or member is obsolete
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(ImageButton)}", (ImageButton.CommandProperty, ImageButton.CommandParameterProperty) },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(MenuItem)}", (MenuItem.CommandProperty, MenuItem.CommandParameterProperty) },
{ $"{nameof(Microsoft)}.{nameof(Microsoft.Maui)}.{nameof(Microsoft.Maui.Controls)}.{nameof(RefreshView)}", (RefreshView.CommandProperty, RefreshView.CommandParameterProperty) },