Skip to content

Commit

Permalink
Merge branch 'main' into dabritch-fundamentals-di
Browse files Browse the repository at this point in the history
  • Loading branch information
davidbritch authored Jan 18, 2024
2 parents 4405c18 + 3702e2a commit bfd2ee9
Show file tree
Hide file tree
Showing 5 changed files with 37 additions and 4 deletions.
2 changes: 1 addition & 1 deletion docs/android/includes/publish-ad-hoc.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ ms.topic: include

The *Archive Manager* displays the publishing process.

1. In the **Save As** dialog, confirm the location and file name for your *.AAB* file is correct and select the **Save** button.
1. In the **Save As** dialog, confirm the location and file name for your package is correct and select the **Save** button.
1. In the **Signing Password** dialog, enter your signing identity password and select the **OK** button:

:::image type="content" source="../deployment/media/publish/vs/keystore-password.png" alt-text="Screenshot of entering your signing identity password.":::
Expand Down
3 changes: 3 additions & 0 deletions docs/ios/apple-account-management.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@ When developing a .NET Multi-platform App UI (.NET MAUI) iOS app it's essential

The Apple account management interface in Visual Studio and Visual Studio for Mac enables you to add your Apple ID, and provides the ability to view information about development teams associated with the Apple ID, view signing certificates and provisioning profiles, create new signing certificates, and download existing provisioning profiles.

> [!IMPORTANT]
> Adding an Apple account that uses federated credentials isn't possible in Visual Studio.
## Add an Apple Developer Account

Before you begin, ensure that you've accepted any user license agreements in your [Apple Developer Account](https://developer.apple.com/account/) and [App Store Connect](https://appstoreconnect.apple.com/).
Expand Down
5 changes: 5 additions & 0 deletions docs/migration/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@ ms.date: 08/30/2023

# Upgrade from Xamarin to .NET

<!-- markdownlint-disable MD032 -->
> [!IMPORTANT]
> Help us improve your upgrade experience from Xamarin to .NET MAUI by completing this [short survey](https://www.surveymonkey.com/r/VXH5TM7).
<!-- markdownlint-enable MD025 -->
Xamarin projects can run on .NET after completing an upgrade process. The following table lists the Xamarin project types that can be upgraded to .NET:

| Project type | Upgrade | Guide |
Expand Down
4 changes: 4 additions & 0 deletions docs/user-interface/graphics/images.md
Original file line number Diff line number Diff line change
Expand Up @@ -287,10 +287,14 @@ if (image != null)
using (MemoryStream memStream = new MemoryStream())
{
newImage.Save(memStream);
// Reset destination stream position to 0 if saving to a file
}
}
```

::: moniker-end

In this example, the image is retrieved from the assembly and loaded as a stream. The image is downsized using the <xref:Microsoft.Maui.Graphics.IImage.Downsize%2A> method, with the argument specifying that its largest dimension should be set to 150 pixels. In addition, the source image is disposed. The downsized image is then saved to a stream.

> [!IMPORTANT]
> The <xref:Microsoft.Maui.Graphics.IImage.Save%2A> method doesn't reset the stream position to 0. Therefore, if you want to save the stream to a file you should use the <xref:System.IO.Stream.Seek%2A> method to reset the destination stream position to 0 before copying it to a file.
27 changes: 24 additions & 3 deletions docs/user-interface/handlers/index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: ".NET MAUI handlers"
description: "Learn about .NET MAUI handlers, which map cross-platform controls to performant native controls on each platform."
ms.date: 08/15/2022
ms.date: 01/17/2024
---

# Handlers
Expand Down Expand Up @@ -40,9 +40,9 @@ All handler-based .NET MAUI controls support two handler lifecycle events:
In addition to these events, each cross-platform control also has an overridable `OnHandlerChanging` method that's invoked when the `HandlerChanging` event is raised, and a `OnHandlerChanged` method that's invoked when the `HandlerChanged` event is raised.

## Handler-based views
## View handlers

The following table lists the types that implement handler-based views in .NET MAUI:
The following table lists the types that implement views in .NET MAUI:

| View | Interface | Handler | Property Mapper | Command Mapper |
| -- | -- | -- | -- | -- |
Expand Down Expand Up @@ -92,3 +92,24 @@ The following table lists the types that implement handler-based views in .NET M
| <xref:Microsoft.Maui.Controls.TimePicker> | <xref:Microsoft.Maui.ITimePicker> | <xref:Microsoft.Maui.Handlers.TimePickerHandler> | <xref:Microsoft.Maui.Handlers.TimePickerHandler.Mapper> | <xref:Microsoft.Maui.Handlers.TimePickerHandler.CommandMapper> |
| <xref:Microsoft.Maui.Controls.ViewCell> | | `ViewCellRenderer` | `Mapper` | `CommandMapper` |
| <xref:Microsoft.Maui.Controls.WebView> | <xref:Microsoft.Maui.IWebView> | <xref:Microsoft.Maui.Handlers.WebViewHandler> | <xref:Microsoft.Maui.Handlers.WebViewHandler.Mapper> | <xref:Microsoft.Maui.Handlers.WebViewHandler.CommandMapper> |

## Page handlers

The following table lists the types that implement pages in .NET MAUI:

| Page | Android Handler | iOS/Mac Catalyst Handler | Windows Handler | Property Mapper | Command Mapper |
| -- | -- | -- | -- | -- | -- |
| <xref:Microsoft.Maui.Controls.ContentPage> | <xref:Microsoft.Maui.Handlers.PageHandler> | <xref:Microsoft.Maui.Handlers.PageHandler> | <xref:Microsoft.Maui.Handlers.PageHandler> | <xref:Microsoft.Maui.Handlers.PageHandler.Mapper> | <xref:Microsoft.Maui.Handlers.PageHandler.CommandMapper> |
| <xref:Microsoft.Maui.Controls.FlyoutPage> | <xref:Microsoft.Maui.Handlers.FlyoutViewHandler> | PhoneFlyoutPageRenderer | <xref:Microsoft.Maui.Handlers.FlyoutViewHandler> | `Mapper` | `CommandMapper` |
| <xref:Microsoft.Maui.Controls.NavigationPage> | <xref:Microsoft.Maui.Handlers.NavigationViewHandler> | NavigationRenderer | <xref:Microsoft.Maui.Handlers.NavigationViewHandler> | `Mapper` | `CommandMapper` |
| <xref:Microsoft.Maui.Controls.TabbedPage> | <xref:Microsoft.Maui.Handlers.TabbedViewHandler> | TabbedRenderer | <xref:Microsoft.Maui.Handlers.TabbedViewHandler> | `Mapper` | `CommandMapper` |
| <xref:Microsoft.Maui.Controls.Shell> | `ShellHandler` | ShellRenderer | ShellRenderer | `Mapper` | `CommandMapper` |

<!--
xrefs not used on:
1. Mapper and CommandMapper because the properties are in different files (handlers vs compatibility renderers).
1. Renderer classes because they are platform-specific, and the API docs only exist for the xplat layer.
1. No API doc for ShellHandler.
-->

0 comments on commit bfd2ee9

Please sign in to comment.