Как создать расширения разметки с привязываемыми свойствами?C#

Место общения программистов C#
Anonymous
Как создать расширения разметки с привязываемыми свойствами?

Сообщение Anonymous »

Я хочу иметь расширение разметки под названием RgbColorExtension, где свойство R можно привязывать, чтобы я мог регулировать его значение с помощью ползунка.
Следующая попытка не сработала. Изменение ползунка не влияет на свойство R.

Код: Выделить всё

namespace Sandbox;

public class RgbColorExtension : BindableObject, IMarkupExtension
{
public static readonly BindableProperty RProperty =
BindableProperty.Create(nameof(R), typeof(float), typeof(RgbColorExtension), 0.5f);

public float R
{
get => (float)GetValue(RProperty);
set => SetValue(RProperty, value);
}

public float G { get; set; }
public float B { get; set; }
public float A { get; set; }

public Color ProvideValue(IServiceProvider serviceProvider)
{
return Color.FromRgba(R, G, B, A);
}

object IMarkupExtension.ProvideValue(IServiceProvider serviceProvider)
{
return (this as IMarkupExtension).ProvideValue(serviceProvider);
}
}
Что мне здесь не хватает?

Вернуться в «C#»