Форум программистов, компьютерный форум, киберфорум
C#: WPF, UWP и Silverlight
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
880 / 559 / 291
Регистрация: 21.11.2012
Сообщений: 1,553

Привязка к свойству базового класса

20.08.2020, 12:17. Показов 1181. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
привет форумчане, у меня на самом деле xamarin проект, но привязки и в впф работают аналогично, поэтому пишу сюда) ветка xamarin низкопосещаемая..

у меня есть окошко загрузки, которое отображается на экране когда устанавливается свойство IsLoading базовой модели, т.е. примерно так:

C#
1
2
3
4
public abstract сlass BaseViewModel : INotifyPropertyChanged
{
     public virtual bool IsLoading {...}
}
XML
1
<com:LoadingIndicator IsVisible="{Binding IsLoading}"/>
практически везде все работает как надо за исключением 1 случая, где в производной модели мне необходимо сделать кое-какие действия при изменении этого свойства:

C#
1
2
3
4
5
6
7
8
9
10
11
12
public class TestViewModel : BaseViewModel
{
     public override bool IsLoading
     {
            get => base.IsLoading;
            set
            {
                  base.IsLoading = value;
                  //какие-то действия
            }
     }
}
как решить?

Добавлено через 30 минут
отбой, проблема не в override, видимо отображение что-то перекрывает. буду разбираться
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.08.2020, 12:17
Ответы с готовыми решениями:

Привязка к свойству класса
Приветствую, ребята! Подскажите пожалуйста, как сделать привязку элемента к свойству класса? Т.е. есть некий класс (ViewModel), в нем есть...

Привязка цвета к свойству
Есть класс PointData со свойством OnOff(отвечающий за цвет точки) если оно true; тогда свойство OnOffColor =...

Привязка текста кнопки к свойству
Приветствую. В чём заключается задача: по нажатию на кнопку асинхронно происходит копирование файлов по разным путям. Поэтому хотелось бы...

5
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16115 / 11236 / 2887
Регистрация: 21.04.2018
Сообщений: 33,036
Записей в блоге: 2
20.08.2020, 12:24
hamin, я не думаю, что ошибка в коде который вы показали.
Попробуйте сделать минимальный демо-пример с демонстрацией этой проблемы.
Если проблема повторится, то выложите пример (полного Решения) сюда.

Добавлено через 46 секунд
Не видел вашего дополнения поста.

Добавлено через 4 минуты
hamin, и я бы посоветовал отделить объявление свойств от логики их зависимости и действий.

Допустим, в классе Новая реализация OnPropertyChangedClass [WPF, Элд Хасп] это делается через переопределение метода PropertyNewValue в производном классе.
Насколько видел, в различных фрамеворках тоже используется аналогичный подход.

Те же DP-свойства так же работают через метод обратного вызова.
0
880 / 559 / 291
Регистрация: 21.11.2012
Сообщений: 1,553
20.08.2020, 14:57  [ТС]
Лучший ответ Сообщение было отмечено Элд Хасп как решение

Решение

Попробуйте сделать минимальный демо-пример с демонстрацией этой проблемы.
так в итоге и поступил и понял, что проблема в другом.

Допустим, в классе Новая реализация OnPropertyChangedClass [WPF, Элд Хасп] это делается через переопределение метода PropertyNewValue в производном классе.
Насколько видел, в различных фрамеворках тоже используется аналогичный подход.
есть еще более удобная реализация INotifyPropertyChanged. там достаточно просто аттрибут перед классом указать и все автосвойства, объявляемые в классе, будут уведомлять ui о своем изменении, т.е. вызывать onpropertychanged. доберусь домой - скину пример
1
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16115 / 11236 / 2887
Регистрация: 21.04.2018
Сообщений: 33,036
Записей в блоге: 2
20.08.2020, 16:33
Цитата Сообщение от hamin Посмотреть сообщение
есть еще более удобная реализация INotifyPropertyChanged
Вы говорите, скорее всего, о Fody.
Но это не C# реализация и её не "пощупаешь руками".
И в ней, насколько помню, тоже есть возможность отслеживания изменения свойств не влазя в их объявление.
0
880 / 559 / 291
Регистрация: 21.11.2012
Сообщений: 1,553
20.08.2020, 16:56  [ТС]
Элд Хасп,

да, именно о нем и писал.
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16115 / 11236 / 2887
Регистрация: 21.04.2018
Сообщений: 33,036
Записей в блоге: 2
20.08.2020, 17:02
Цитата Сообщение от hamin Посмотреть сообщение
да, именно о нем и писал.
Я одно время пытался его освоить, но... воз и ныне там.
Освоить на таком уровне чтобы расширить функциональность Fody/PropertyChanged.
Хотел добавить туда реализацию команд и атрибуты для зависимых свойств, методов.

Добавлено через 3 минуты
Сейчас хочу красиво "допилить" тему команд, но не могу разобраться как конвертируются различные типы при привязке.
Для типизированных WPF команд желательно сделать полностью идентичную конвертацию.
Это улучшит предсказуемость, понимание кода.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.08.2020, 17:02
Помогаю со студенческими работами здесь

Привязка данных к кастомному свойству зависимости
Всем привет. Появился потребность передать в UserControl некую информацию, а точнее привзяать эту информацию к свойству, которое нужно для...

Привязка данных к изменямому в кодк свойству
Доброго дня! Столкнулась с проблемой привязки TextBox.Text или TextBlock.Text к свойству изменяемому в коде. Для того, чтобы...

GridViewColumn привязка к свойству Width другого элемента
Всем привет! Не могу разобраться с ListView. У меня 2 проблемы: 1. Не работает привязка свойства Width элемента GridViewColumn к...

Привязка TextBox.Text и DataGrid.SelectedItem к одному свойству
Добрый вечер! Про DataGrid много создано тем, но найти решение возникшей проблемы не удалось (может быть плохо искала). Есть...

Из одного класса обратиться к свойству progressBar из другого класса (основного окна)
Привет! :) Помогите пожалуйста нубу (мне). У меня есть два класса. Первый (основной), его код: namespace CMS { ///...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru