|
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 28
|
|||||||||||
Хотелось бы понять, почему неправильно работает триггер20.06.2021, 11:27. Показов 6375. Ответов 58
Метки нет (Все метки)
Набросал элементарный триггер для ToggleButton, а он в Checked режиме выводит пустую строку вместо заданной. Всё перерыл, неделю копался в отладчике -- всё должно работать, а не работает. Подскажите, пожалуйста, что я проморгал...
github: https://github.com/RayDIceman/testTriggerWpf Если без него, то так:
И вот ClosingText никогда не появляется, не понимаю, почему. если раскомментировать код, то всё ок, но не нравятся костыли. И так должно работать...
0
|
|||||||||||
| 20.06.2021, 11:27 | |
|
Ответы с готовыми решениями:
58
Не могу понять, почему программа неправильно работает! Программа работает неправильно (не так, как хотелось бы) Не могу понять, почему программа работает неправильно( Знаю, что где-то ошибки, но не могу найти |
|
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 28
|
|
| 20.06.2021, 11:54 [ТС] | |
|
да. Свойства зависимости
0
|
|
|
Модератор
|
||
| 20.06.2021, 12:07 | ||
|
Ray DIceman, открыл реп.
Вы вообще неправильно подошли к реализации. Вам нужен не UserControl (Пользовательский элемент управления), а Custom Control (Настраиваемый элемент управления). Основная функция UserControl - это представление данных поступающих из Контекста Данных. Такая же как у Окна. Основное использование : представление регионов Окна и данных для представления которых не хватает возможностей Шаблона Данных. Вы же в XAML? совершенно не обращаетесь к контексту данных и, следовательно, вам не нужен UserControl. Ну, или вы его очень криво реализовали. Лучше для начала расскажите что вы хотели реализовать обычными словами. Не КАК ХОТЕЛИ, а именно ЧТО ХОТЕЛИ, Добавлено через 3 минуты Так как вы обращаетесь к ним типично для присоединённых. А для DP свойств лучше сначала объявить CustomControl.
0
|
||
|
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 28
|
|
| 20.06.2021, 12:12 [ТС] | |
|
>>ЧТО ХОТЕЛИ
Это просто.Хотел ToggleButton с двумя состояниями текста в себе. фактически, на этом этапе достаточно. Но вопрос не в том, правильно ли выбран метод. Охотно верю, что написал чушь. Только почему эта чушь работает неравильно?.. Вы хотите сказать, что этот же триггер, допустим, в CustomControl будет работать как надо?..
0
|
|
|
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 28
|
|
| 20.06.2021, 12:16 [ТС] | |
|
Допустим, что ничем не отличается, ничего дополнительного не надо. Хорошо, попытаю customControl, Спасибо!
0
|
|
|
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 28
|
|
| 20.06.2021, 12:38 [ТС] | |
|
А есть предположение, почему не работает правильно, и что конкретно изменить, чтоб заработало? :-)
0
|
|
|
Модератор
|
||
| 20.06.2021, 13:31 | ||
Сообщение было отмечено Ray DIceman как решение
РешениеНеправильно построена сама логика представления. Вы пытаетесь одному и тому же DP-свойству задать явное (локальное) значение и изменять его через стиль. У явного значения приоритет выше и стиль не может изменить его. Иначе было бы невозможно присваивать значения свойствам. Почти у всех них есть значения задаваемые шаблоном. Добавлено через 1 минуту Список приоритета настройки свойств зависимости
0
|
||
|
Модератор
|
|||||||
| 20.06.2021, 13:55 | |||||||
Сообщение было отмечено Ray DIceman как решение
РешениеНо логика несколько идиотская получается. Как минимум надо добавить свойство для стрелки в открытом состоянии. А то получается в закрытом форма стрелки берётся из свойства. А в открытом задана жёстко в XAML. И тип свойства стрелки надо поменять на Geometry. Добавлено через 16 секунд
Триггерами менять внутренние элементы можно только внутри Шаблона.
0
|
|||||||
|
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 28
|
|||||||||||
| 20.06.2021, 13:55 [ТС] | |||||||||||
|
если вместо
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 28
|
|
| 20.06.2021, 14:24 [ТС] | |
|
Спасибо большое.
0
|
|
|
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 28
|
|
| 20.06.2021, 16:42 [ТС] | |
|
Задача. Но её поставил я сам.
Добавлено через 1 час 31 минуту Не, ну пустая строка присваивается же. почему с ней получается, а своё же DP нет... бардак.
0
|
|
|
Модератор
|
||
| 20.06.2021, 16:58 | ||
|
Присмотритесь по вашей логике. Вы именно и пытаетесь это сделать. Свойство можно присвоить либо обычным присвоением, что вы делаете в конструкторе. Либо сеттером в стиле. Если есть обычное присвоение, то сеттер игнорируется.
0
|
||
|
0 / 0 / 0
Регистрация: 30.03.2020
Сообщений: 28
|
|
| 20.06.2021, 17:01 [ТС] | |
|
А пустое значение присвоить получается, если в триггере поменять ветки, то тоже работает наполовину. Только на другую...
0
|
|
|
Модератор
|
|
| 20.06.2021, 17:09 | |
|
Ray DIceman, не надо ломать голову как сделать НЕПРАВИЛЬНО.
Любое решение задачи начинается в первую очередь с выбора правильного способа её решения с учётом имеющихся инструментов. А не наоборот: "я хочу её решить этим инструментам, но не тем способом для чего он предназначен". Добавлено через 9 секунд Если свойство предназначено для получения ВНЕШНИХ данных, то в принципе не надо задавать ему сеттер в стиле. А почему одно кривое решение работает наполовину, а другое вовсе не работает - зачем в этом копаться?
0
|
|
| 20.06.2021, 17:09 | |
|
Помогаю со студенческими работами здесь
20
Понять, почему не срабатывает триггер Неправильно работает триггер Неправильно работает триггер на удаление и запрет вставки Почему смена текста работает только один раз? Что неправильно в коде и почему?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
|