ICYMI Voici ce qui est en magasin pour .net Maui dans .NET 10.
✨ L’une de mes recommandations les plus fréquentes lorsque vous étudiez ou travaillez avec n’importe quelle technologie est de rester à jour avec les dernières mises à jour. Cela vous aide à garder vos projets à jour et à profiter des dernières fonctionnalités.
C’est pourquoi aujourd’hui je vous apporte un résumé de Quoi de neuf dans .net Maui pour .net 10. Alors prenez votre tasse de café et commençons! ☕ Comme vous le savez, l’équipe Microsoft définit toujours un objectif clair pour chaque version et travaille dur pour y parvenir. Dans ce cas, L’objectif principal de .net Maui dans .NET 10 a été d’améliorer la qualité du produit.
Dans .NET 10, .NET MAUI est distribué comme une charge de travail .NET avec plusieurs packages NuGet. Mais quel est l’avantage de cette approche? 🤔 Il vous permet d’épingler facilement vos projets vers des versions spécifiques, tout en vous offrant un accès simple à l’aperçu ou aux versions expérimentales.
Animations
Certaines méthodes ont été obsolètes. Vous trouverez ci-dessous une table avec leurs remplacements:
Comme vous pouvez le voir, la syntaxe elle-même n’a pas changé radicalement. En fait, la seule différence est que toutes les méthodes existantes nécessitent désormais simplement l’ajout du suffixe « Async » à la fin.
Compatibilité.layout
«Ceci est maintenant supprimé des modèles et des versions. Utilisez des dispositions .net Maui.»
Qu’est-ce que la compatibilité.layout?
Cela fait partie du Microsoft.maui.controls.compatibilité Espace de noms, qui a permis à de nombreux composants Xamarin.forms d’être compatibles avec .net Maui. Par conséquent, si vous aviez une application plus ancienne, vous pouvez toujours travailler avec les dispositions précédentes sans aucun problème.
Qu’est-ce que cela signifie qu’il a été supprimé?
Dans ce cas, pour .net 10, il n’est plus inclus. Cependant, ce n’est pas un problème car vous pouvez le remplacer par les dispositions actuellement disponibles telles que Grille, vertical stacklayout, horizontalstacklayout et flexlayoutce qui peut reproduire le même comportement mais avec de meilleures performances et plus alignées avec les meilleures pratiques modernes.
Événement de sélection dans les contrôles de l’éditeur et d’entrée sur Android
Dans . le Entrée et Éditeur Les contrôles sont rendus à l’aide de vues natives sur chaque plate-forme. Dans le cas d Androïdejusqu’à .Net 9 Les deux commandes ont utilisé le natif AppcompateditText.
Avec .Net 10ces contrôles utilisent désormais MauappcompateditTextune classe Maui .net personnalisée dérivée de AppCompateditText.
La principale amélioration introduite par ce changement est le support pour le Sélectionchange événement, qui n’était pas disponible auparavant sur Android.
Intercepter les demandes Web
Avec .NET 10, vous pouvez désormais intercepter les demandes Web avec les contrôles BlazorWebView et HybridWebView. Cela signifie que chaque fois que votre application fait une demande à une URL, vous pouvez intervenir pour la modifier – par exemple, redirigez-la vers un autre domaine ou ajoutez des en-têtes d’authentification.
Regardons un exemple de la façon de faire ceci:
webView.WebResourceRequested += (s, e) =>
{
if (e.Uri.ToString().Contains("api/secure"))
{
e.Handled = true;
e.SetResponse(200, "OK", "application/json", GetCustomStream());
}
};
Dans l’exemple, ce qui suit se produit:
e.Handled = true
indique que votre demande s’occupe de la réponse.- Dans le
e.SetResponse
Méthode, les paramètres signifient:200
: Le code d’état HTTP est renvoyé."OK"
: Le message associé au code d’état."application/json"
: Le type de contenu de la réponse (dans ce cas, un JSON).
GetCustomStream()
: Le flux de données (flux) qui contient la réponse réelle; Ici, vous pouvez retourner un JSON local, un fichier ou tout contenu que vous souhaitez envoyer à WebView.
ListView
Le ListView Le contrôle a été obsolète, ainsi que les types de cellules EntryCell, ImageCell, SwitchCell, TextCell et ViewCell. Au lieu de cela, vous devriez utiliser Collection Viewqui offre de meilleures performances et une plus grande flexibilité (car elle permet des conceptions plus complexes).
⚠️ le Cellule La classe n’a pas encore été officiellement obsolète, car elle est toujours utilisée en interne; Cependant, Microsoft indique clairement qu’il devrait également être considéré comme obsolète.
Table
Dans Xamarin.forms et hérité dans les premières versions de .net Maui, le Table était un contrôle conçu pour afficher les données dans un format de table structuré.
Mais maintenant, ce contrôle a été dépréciéet vous pouvez le remplacer par le CollectionView.
Page
« Le IsBusy
La propriété est marquée obsolète. »
Bien que le IsBusy
La propriété fonctionne toujours pour la compatibilité, il est préférable d’éviter de l’utiliser dans de futures implémentations. Puisqu’il est encore temps, je recommande de le remplacer progressivement dans vos projets si vous l’avez déjà mis en œuvre.
Barre de recherche
Le Barre de recherche Comprend maintenant deux propriétés:
SearchIconColor
: Une propriété contraignable qui vous permet de définir la couleur de l’icône de rechercheReturnType
: Une propriété contraignable qui spécifie l’apparence du bouton de retour (la valeur par défaut est la recherche)
Exemple dans XAML:
<SearchBar Placeholder="Search items..."
SearchIconColor="Red" />
Changer
Le Changer Comprend maintenant une nouvelle propriété:
OffColor
: Une propriété contraignable qui définit la couleur de l’interrupteur lorsqu’elle est à l’état hors
Exemple dans XAML:
<Switch OffColor="Red"
OnColor="Green" />
Vibration et hapticfeedback
Les vibrations et le hapticfeedback incluent désormais le IsSupported
Propriété, qui vous permet de vérifier si la fonctionnalité est disponible sur la plate-forme où votre application est en cours d’exécution.
Le Médiapicker a été amélioré avec deux capacités importantes:
- Sélection de fichiers multiples: Auparavant, il se limitait à sélectionner un seul fichier, mais vous pouvez maintenant permettre à l’utilisateur de sélectionner plusieurs fichiers à la fois.
- Compression d’image directement à partir de l’API: Cela peut être réalisé en utilisant le
MaximumWidth
etMaximumHeight
Paramètres, qui vous permettent de définir la taille maximale des images lorsqu’ils sont sélectionnés.
Par exemple:
var result = await MediaPicker.PickMultipleAsync(new MediaPickerOptions
{
MaximumWidth = 1024,
MaximumHeight = 768
});
Texte à la parole
Le SpeechOptions
La classe comprend maintenant un Rate
propriété, qui vous permet de contrôler la vitesse de lecture de la voix.
Pop-ups
Certaines méthodes ont été obsolètes. Vous trouverez ci-dessous une table avec leurs remplacements:
Comme vous pouvez le voir, la syntaxe elle-même n’a pas changé radicalement. En fait, la seule différence est que toutes les méthodes existantes nécessitent désormais simplement l’ajout du suffixe «async» à la fin.
Améliorations de sécurité
Cette version introduit des améliorations importantes à la gestion de SafeArea:
- Contrôle plus important avec des épreuves de sécurité: Le
SafeAreaEdges
La propriété a été améliorée, permettant un comportement plus précis dans les zones sûres. - Correction iOS: L’espace inférieur supplémentaire dans une vue de défilement lors de l’utilisation
SafeAreaEdges
a été résolu, ainsi que d’autres problèmes survenus sur iOS. - Meilleures valeurs par défaut: Les paramètres par défaut ont été ajustés pour fournir un comportement plus cohérent sur toutes les plates-formes.
Le SafeAreaEdges property
est disponible sur les commandes suivantes:
- Mise en page: Classe de mise en page de base (héritée par Grid, Stacklayout, Flexlayout, etc.)
- ContentView: Conteneur de vue de contenu
- ContentPage: Type de page principale
- Frontière: Contrôle des frontières
- ScrollView: Conteneur de contenu défile
Conclusion
Cela a été un bref résumé de certaines des mises à jour clés que Microsoft a annoncées pour .net Maui dans .NET 10. Pour plus de détails, je recommande de lire l’article complet « Quoi de neuf dans .net Maui pour .net 10. «
N’oubliez pas de commencer à appliquer ces mises à jour dans vos projets! Et si vous avez des questions, n’hésitez pas à les laisser tomber dans les commentaires.
Rendez-vous dans le prochain! 🙋♀️💚
Références
Source link