Indermove
@Indermove
C#/.NET back-end разработчик

Как создать Attached Property для стандартного контрола?

Добрый день, товарищи, возник вопрос, как создать новое свойство для системного контрола, исходный код которого недоступен? То есть например, как в строке ниже, появилась возможность менять новое свойство NewProperty у контрола DataGridTextColumn:

<DataGridTextColumn NewProperty = "111"  Header="Main"/>
  • Вопрос задан
  • 235 просмотров
Решения вопроса 2
@tex0
Унаследоваться от системного контрола, добавить свое свойство.
Ответ написан
@SZolotov
Asp.net core, MAUI,WPF,Qt, Avalonia
<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:wpfApplication1="clr-namespace:WpfApplication1"
        Title="MainWindow" Height="350" Width="525">
    <Grid wpfApplication1:NewPropertyHelper.Prop="{Binding}">
        
    </Grid>
</Window>

namespace WpfApplication1
{
    public static class NewPropertyHelper
    {
        public static readonly DependencyProperty PropProperty = DependencyProperty.RegisterAttached("Prop", typeof (object), typeof (NewPropertyHelper), new PropertyMetadata(default(object)));

        public static object GetProp(UIElement element)
        {
            return (object) element.GetValue(PropProperty);
        }

        public static void SetProp(UIElement element, object value)
        {
            element.SetValue(PropProperty, value);
        }
    }
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
от 120 000 до 200 000 ₽
СОЮЗСНАБ Красногорск
от 200 000 до 230 000 ₽
Горбилет Санкт-Петербург
от 250 000 ₽
07 сент. 2024, в 22:24
5000 руб./за проект
07 сент. 2024, в 21:23
3000 руб./за проект
07 сент. 2024, в 20:47
300000 руб./за проект