Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это ColorToHexRgbStringConverter
преобразователь, позволяющий пользователям преобразовывать привязку значений Color
в шестнадцатеричный string
эквивалент RGB в формате: #redgreenblue где красный, зеленый и синий будут иметь значение от 0 до FF (например , #FF0000 для Colors.Red
.
Метод Convert
возвращает предоставленный Color
value
преобразованный в шестнадцатеричный string
эквивалент RGB.
Метод ConvertBack
возвращает шестнадцатеричное string
value
значение RGB, преобразованное в объект Color
.
Свойства BaseConverter
Следующие свойства реализуются в базовом классе: public abstract class BaseConverter
Свойство | Description |
---|---|
DefaultConvertReturnValue |
Значение по умолчанию, возвращаемое при IValueConverter.Convert(object?, Type, object?, CultureInfo?) вызове Exception . Это значение используется, когда сообщество набор средств. Для Maui.Options.ShouldSuppressExceptionsInConverters задано значение true . |
DefaultConvertBackReturnValue |
Значение по умолчанию, возвращаемое при IValueConverter.ConvertBack(object?, Type, object?, CultureInfo?) вызове Exception . Это значение используется, когда сообщество набор средств. Для Maui.Options.ShouldSuppressExceptionsInConverters задано значение true . |
Свойства ICommunity набор средств ValueConverter
В следующих свойствах реализованы public interface ICommunityToolkitValueConverter
следующие свойства:
Свойство | Type | Описание |
---|---|---|
DefaultConvertReturnValue |
object? |
Значение по умолчанию, возвращаемое при IValueConverter.Convert(object?, Type, object?, CultureInfo?) вызове Exception . Это значение используется, когда сообщество набор средств. Для Maui.Options.ShouldSuppressExceptionsInConverters задано значение true . |
DefaultConvertBackReturnValue |
object? |
Значение по умолчанию, возвращаемое при IValueConverter.ConvertBack(object?, Type, object?, CultureInfo?) вызове Exception . Это значение используется, когда сообщество набор средств. Для Maui.Options.ShouldSuppressExceptionsInConverters задано значение true . |
Синтаксис
В следующих примерах показано, как использовать ColorToHexRgbStringConverter
для отображения шестнадцатеричной строки RGB определенной Color
шестнадцатеричной строки.
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>
Использование ColorToHexRgbStringConverter
Его ColorToHexRgbStringConverter
можно использовать следующим образом в 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.ColorToHexRgbStringConverterPage">
<ContentPage.Resources>
<ResourceDictionary>
<toolkit:ColorToHexRgbStringConverter x:Key="ColorToHexRgbStringConverter" />
</ResourceDictionary>
</ContentPage.Resources>
<VerticalStackLayout>
<Label Text="My favourite Color is:" />
<Label Text="{Binding MyFavoriteColor, Converter={StaticResource ColorToHexRgbStringConverter}}" />
</VerticalStackLayout>
</ContentPage>
C#
Его ColorToHexRgbStringConverter
можно использовать следующим образом в C#:
class ColorToHexRgbStringConverterPage : ContentPage
{
public ColorToHexRgbStringConverterPage()
{
var label = new Label();
label.SetBinding(
Label.TextProperty,
new Binding(
nameof(ViewModel.MyFavoriteColor),
converter: new ColorToHexRgbStringConverter()));
Content = new VerticalStackLayout
{
Children =
{
new Label { Text = "My favourite Color is:" },
label
}
};
}
}
Разметка C#
Наш CommunityToolkit.Maui.Markup
пакет предоставляет гораздо более краткий способ использования этого преобразователя в C#.
using CommunityToolkit.Maui.Markup;
class ColorToHexRgbStringConverterPage : ContentPage
{
public ColorToHexRgbStringConverterPage()
{
Content = new VerticalStackLayout
{
Children =
{
new Label()
.Text("My favourite Color is:"),
new Label()
.Bind(
Label.TextProperty,
static (ViewModel vm) => vm.MyFavoriteColor,
converter: new ColorToHexRgbStringConverter())
}
};
}
}
Примеры
Пример этого преобразователя можно найти в действии в сообществе .NET MAUI набор средств пример приложения.
API
Исходный код ColorToHexRgbStringConverter
можно найти в репозитории сообщества .NET MAUI набор средств GitHub.
.NET MAUI Community Toolkit