|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
||||||||||||||||||||||||||
DependencyProperty как отображать изменения свойства во View27.01.2024, 19:27. Показов 6173. Ответов 84
У меня есть Custom Control
xaml
Я объявил событие NumericComboBoxSelectionChanged, при изменение SelectedValue меняется значение у свойства TimeType. У меня не получается сделать чтобы при изменение свойства TimeType из вне К примеру по нажатию кнопки изменить значение.
Заранее всем спасибо) Добавлено через 3 часа 38 минут Пока что ничего лучше не придумал. Как то так.
И изменил привязки чтобы работали на уровне родителя
0
|
||||||||||||||||||||||||||
| 27.01.2024, 19:27 | |
|
Ответы с готовыми решениями:
84
WPF MVVM View и ViewModel или UserControl и DependencyProperty Как в стилизованном селекте отображать изменения |
|
Модератор
|
||
| 03.02.2024, 00:01 | ||
|
ComboBox - Есть список разных значений и перебор их. TabControl - Перебор вкладок. ListBox, ListView - перебор элементов (обычно строк). DataGrid - перебор строк. И это всё можно реализовать одним внедрением в Selector. Добавлено через 3 часа 24 минуты xellan24rus, скинул фиксацию. В ветке eldhasp - пример. Добавлено через 24 минуты Ещё добавил пример с ToggleButton. Добавлено через 1 час 25 минут Вынес управление TextBox-ом. Возможно нарушил где-то логику. Проверьте. Теперь его можно использовать независимо от RangeBase. Добавлено через 2 минуты Но что-то мне это не очень нравится. Тогда получается сам NumericUpDown непонятно для чего нужен... По идее логика должна быть разнесена между TextBox и NumericUpDown. Надо подумать где границу провести. Добавлено через 1 минуту НО это уже завтра.
1
|
||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
|||
| 03.02.2024, 15:37 [ТС] | |||
|
Элд Хасп, я пока что разбираюсь с кодом и думаю как можно было сделать.
И игнорирование атрибутов git что то сотворило Пересборка\удаление obj debug не спасает. Видать что то нужное удалилось, возможно Единственное в NumericUpDownTime если сделать ValueResult и забиндить его в DoubleTextBox, и туда пробросить TimeIntervals, то как мне отличать NumericUpDown от NumericUpDownTime чтобы ValueResult не работал в NumericUpDown. Пока что об этом думаю
0
|
|||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
|
| 03.02.2024, 15:48 [ТС] | |
|
Элд Хасп, понял, в своей ветке я обновлял код. Там есть работа ValueResult и формат единиц измерения, вот его хотел бы оставить как он сейчас реализован. Он задан в самом ComboBox.
0
|
|
|
Модератор
|
|||
| 03.02.2024, 15:50 | |||
|
По идее, эти свойства могут понадобиться где угодно и должны работать с любыми элементами. Поэтому согласен с вами - их нужно вынести в отдельный статический хелпер не завязанный на какой-то конкретный тип элементов.
0
|
|||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
|||||||
| 03.02.2024, 16:00 [ТС] | |||||||
0
|
|||||||
|
Модератор
|
||
| 03.02.2024, 17:45 | ||
|
Добавлено через 52 секунды Или вообще его удалить и просто создать кастомный стиль для RangeBase.
0
|
||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
|||
| 03.02.2024, 18:56 [ТС] | |||
|
0
|
|||
|
Модератор
|
|||
| 03.02.2024, 20:52 | |||
|
Возвращаюсь на свою - ошибка сюда тоже пертащилась. Что не пробовал - не пропадает. Добавлено через 1 минуту Успел проверить до переключения веток.
0
|
|||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
|||||||||||||
| 03.02.2024, 21:39 [ТС] | |||||||||||||
|
Вашу ветку я смог собрать без ошибки, для этого в окне mainWindow я удалил ошибку, далее проект перенес на диск C и там уже удалил все obj и debug папки, пересобрал проект, ошибки нет. Думаю это связано с тем что проект при первом запуске собирается не правильно из за ошибки и не может в будущем собраться, пока не сменишь все пути к нему. Добавлено через 6 минут Добавлено через 23 минуты Элд Хасп, но в StyleDataHelper с указанием типа есть проблема. Пример
ArgumentNullException: Value cannot be null. Arg_ParamName_Name если указать OwnerType как StyleDataHelper, то ошибок нет.
0
|
|||||||||||||
|
Модератор
|
|||||||
| 03.02.2024, 21:50 | |||||||
1
|
|||||||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
|
| 03.02.2024, 21:59 [ТС] | |
|
0
|
|
|
Модератор
|
||
| 03.02.2024, 22:10 | ||
|
Но проект собирается и запускается. Добавлено через 5 минут Добавил в проект новое окно. Все ошибки исчезли. Удалил добавленное окно - ошибки не проявились. Добавлено через 3 минуты И в других копиях репозитория ошибки тоже исчезли.... Мистика да и только!
0
|
||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
||
| 03.02.2024, 22:21 [ТС] | ||
|
Элд Хасп, мистика не то слово..
Мне помогло другое решение, удалил имена пути сгенерированного git(от) Вышло что то вроде C:\Users\Pc\Downloads\Design_Style\Desig n_Style Было C:\Users\Pc\Downloads\Design_Style-eldhasp\Design_Style-eldhasp Добавлено через 2 минуты
0
|
||
|
Модератор
|
|
| 03.02.2024, 23:27 | |
|
xellan24rus, ошибку при смене словаря устранил.
Но честно говоря, неожиданная ошибка. На мой взгляд это откровенный баг. После смены коллекции свойство Selector.SelectedValue сбрасывается, вместо ревалидации привязки.
0
|
|
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
||||||
| 04.02.2024, 00:04 [ТС] | ||||||
|
Элд Хасп, посмотрел реализацию, теперь смена словаря работает хорошо,
UpdateTarget обновляет сразу, у базовой реализации ComboBox с этим явно проблемы...И всё хотелось бы оставить контент такой реализации, в плане локализации, достаточно динамические ресурсы задать из словерей. На стороне c# в этом плане даже делать ничего не придётся
0
|
||||||
|
Модератор
|
||||
| 04.02.2024, 00:24 | ||||
|
Можно использовать свойства, можно ресурсы. Чего точно не стоит делать - так это менять в шаблоне. Добавлено через 26 секунд Добавлено через 10 минут
0
|
||||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
|||
| 04.02.2024, 00:25 [ТС] | |||
|
Или всё таки для каждого имени ComboBoxItem лучше создать свои dp свойства?
0
|
|||
|
Модератор
|
||||
| 04.02.2024, 00:29 | ||||
|
Добавлено через 1 минуту Как я показывал вам в примере с конвертером отображения. Добавлено через 1 минуту Как одно с другим связано? Если всё сделано правильно на Шарпе, то используйте как хотите, с какими хотите ресурсами.
1
|
||||
| 04.02.2024, 00:29 | |
|
При помощи какого свойства можно располагать view-элементы над другими view-элементами?
Как сохранить изменения в бд после редактирования в View Динамически отображать свойства элементов Как сделать доступными для изменения свойства RuntimeBroker в ComponentServices? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача:
В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
|