Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это ByteArrayToImageSourceConverter
преобразователь, позволяющий пользователю преобразовывать входящее значение из массива byte
и возвращать значение ImageSource
. Затем этот объект можно использовать в качестве Source
Image
элемента управления.
Метод Convert
возвращает предоставленный byte[]
value
преобразованный в объект ImageSource
.
Метод ConvertBack
возвращает предоставленный ImageSource
value
преобразованный в объект byte[]
.
Свойства BaseConverter
Следующие свойства реализуются в базовом классе: public abstract class BaseConverter
Свойство | Description |
---|---|
DefaultConvertReturnValue |
Значение по умолчанию, возвращаемое при IValueConverter.Convert(object?, Type, object?, CultureInfo?) вызове Exception . Это значение используется при установке параметра true CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters . |
DefaultConvertBackReturnValue |
Значение по умолчанию, возвращаемое при IValueConverter.ConvertBack(object?, Type, object?, CultureInfo?) вызове Exception . Это значение используется при установке параметра true CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters . |
Свойства ICommunityToolkitValueConverter
В следующих свойствах реализованы public interface ICommunityToolkitValueConverter
следующие свойства:
Свойство | Type | Описание |
---|---|---|
DefaultConvertReturnValue |
object? |
Значение по умолчанию, возвращаемое при IValueConverter.Convert(object?, Type, object?, CultureInfo?) вызове Exception . Это значение используется при установке параметра true CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters . |
DefaultConvertBackReturnValue |
object? |
Значение по умолчанию, возвращаемое при IValueConverter.ConvertBack(object?, Type, object?, CultureInfo?) вызове Exception . Это значение используется при установке параметра true CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters . |
Синтаксис
XAML
Включение пространства имен XAML
Чтобы использовать набор средств в XAML, xmlns
необходимо добавить на страницу или представление следующее:
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"
Поэтому следующее:
<ContentPage
x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml">
</ContentPage>
Будет изменено, чтобы включить следующее xmlns
:
<ContentPage
x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit">
</ContentPage>
Использование ByteArrayToImageSourceConverter
Его ByteArrayToImageSourceConverter
можно использовать следующим образом в XAML:
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"
x:Class="CommunityToolkit.Maui.Sample.Pages.Converters.ByteArrayToImageSourceConverterPage">
<ContentPage.Resources>
<ResourceDictionary>
<toolkit:ByteArrayToImageSourceConverter x:Key="ByteArrayToImageSourceConverter" />
</ResourceDictionary>
</ContentPage.Resources>
<Image Source="{Binding DotNetBotImageByteArray, Mode=OneWay, Converter={StaticResource ByteArrayToImageSourceConverter}}" />
</ContentPage>
C#
Его ByteArrayToImageSourceConverter
можно использовать следующим образом в C#:
class ByteArrayToImageSourceConverterPage : ContentPage
{
public ByteArrayToImageSourceConverterPage()
{
var image = new Image();
image.SetBinding(
Image.SourceProperty,
new Binding(
static (ViewModel vm) => vm.DotNetBotImageByteArray,
mode: BindingMode.OneWay,
converter: new ByteArrayToImageSourceConverter()));
Content = image;
}
}
Разметка C#
Наш CommunityToolkit.Maui.Markup
пакет предоставляет гораздо более краткий способ использования этого преобразователя в C#.
using CommunityToolkit.Maui.Markup;
class ByteArrayToImageSourceConverterPage : ContentPage
{
public ByteArrayToImageSourceConverterPage()
{
Content = new Image()
.Bind(
Image.SourceProperty,
static (ViewModel vm) => vm.DotNetBotImageByteArray,
mode: BindingMode.OneWay,
converter: new ByteArrayToImageSourceConverter());
}
}
Примеры
Пример этого преобразователя можно найти в действии в примере приложения .NET MAUI Community Toolkit.
API
Исходный код ByteArrayToImageSourceConverter
можно найти в репозитории .NET MAUI Community Toolkit GitHub.
.NET MAUI Community Toolkit