|
|
||||||
WPF DataTrigger Binding для стиля DataGridCell к значению ячейки28.10.2022, 08:38. Показов 2092. Ответов 36
Метки нет (Все метки)
Всем привет!
Появилась необходимость написать стиль для ячейки DataGrid, который мог бы при определённом значении ячейки проводить некие действия с оформлением. Но возник вопрос - как правильно забиндить DataTrigger на значение этой ячейки, чтобы не писать этот стиль полностью в каждой нужной ячейке, а просто подключить его и всё... Вот сам стиль, и хотелось бы его добавить в ресурсы
0
|
||||||
| 28.10.2022, 08:38 | |
|
Ответы с готовыми решениями:
36
Как DataTrigger менять текст ячейки в DataGrid?
Binding через RelativeSource в шаблоне для ячейки GridControl |
|
1596 / 601 / 185
Регистрация: 05.12.2015
Сообщений: 970
|
|||||||||||
| 29.10.2022, 02:49 | |||||||||||
|
По теме сделал похожее.
Уже поздно, потом напишу комменты.
2
|
|||||||||||
|
1596 / 601 / 185
Регистрация: 05.12.2015
Сообщений: 970
|
||||||
| 29.10.2022, 08:49 | ||||||
|
В коде строки с 30-31 заменить:
2
|
||||||
|
Модератор
|
|||
| 29.10.2022, 12:00 | |||
|
Это действительно похоже. Правда не запускал - сужу по коду. Но мне больше нравится расширение разметки. Его удобнее в XAML использовать. Добавлено через 5 минут А я уже целый абзац написал по этому поводу! Вы уже сами поправили. ![]() Добавлено через 2 минуты dc - это FrameworElement.Поэтому привязку можно задать его методом: dc.SetBinding (StylexProperty, bind);.
0
|
|||
|
1596 / 601 / 185
Регистрация: 05.12.2015
Сообщений: 970
|
|||||||||||
| 29.10.2022, 13:42 | |||||||||||
|
можно дополнить чтоб упростить разметку
Надо еще одно АР на DataGridColumn чтоб присвоения были только для клеток из этого Column, где установлено это АР
2
|
|||||||||||
|
|
|
| 31.10.2022, 09:16 [ТС] | |
|
Элд Хасп, proa33, Необходимость такого стиля возникла в ходе написания окна предпросмотра данных перед загрузкой в БД (скрин). То бишь если значение ячейки NULL - то цвет её фона должен меняться, крася красным нужные поля документа для экспорта.
0
|
|
|
|
|
| 31.10.2022, 09:17 [ТС] | |
|
Ваши варианты еще пока не пробовал...
0
|
|
|
|
|
| 31.10.2022, 10:41 [ТС] | |
|
Элд Хасп, Да, всё верно, стиль один.
0
|
|
|
Модератор
|
|
| 31.10.2022, 10:59 | |
|
Andrey-MSK, ещё немного рефакторинга: DataGridCellValue.7z
И вариант для получения контента ячейки: DataGridCellContent.7z В колонках DataGridBoundColumn это будет UI элемент ячейки.Тоже может где-то пригодиться.
1
|
|
|
|
||||||||||||||||
| 31.10.2022, 11:43 [ТС] | ||||||||||||||||
|
Элд Хасп, Вот так не работает
Переписал ваш пример вот так, по стандарту C# 7.3
0
|
||||||||||||||||
|
Модератор
|
|||||||||||||||||||||||||||||||||||||||
| 31.10.2022, 13:39 | |||||||||||||||||||||||||||||||||||||||
"Null" не есть null.
Ещё, возможно стоит изменить возврат после задания привязки AP-свойству. Так как null - это дефолтное значение, то после присвоения привязки к null вызова конвертера не будет происходить. Поэтому, возможно, надо так:
Не... вот так - надо же ещё через доп. конвертер пропустить:
Это значительно упрощает их использование в XAML. Вот "рыба" под конвертер:
ConverterParameter={cnvs:NullToBool}.В ресурсах создавать конвертер уже не нужно.
1
|
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||
| 31.10.2022, 14:42 [ТС] | |||||||||||||||||
Элд Хасп, Конвертер вот такой
0
|
|||||||||||||||||
|
Модератор
|
||
| 31.10.2022, 15:01 | ||
Сообщение было отмечено Andrey-MSK как решение
РешениеЗапятой отделяются параметры. А у вас только один параметр. Она не нужна. В же не пишите в методе SomeMethod(, args).Так же и в XAML Расширении разметки.
1
|
||
|
|
|
| 31.10.2022, 15:04 [ТС] | |
|
Элд Хасп, Работает
Во я слепой, у вас ведь было написано без запятой ![]() Спасибо!!!
0
|
|
|
Модератор
|
||||||||||||||
| 31.10.2022, 15:08 | ||||||||||||||
Особенно когда много сидишь за кодом, ищешь ошибки в чём-то сложном и упускаешь элементарное, лежащее под носом. Добавлено через 1 минуту
1
|
||||||||||||||
|
|
||
| 31.10.2022, 15:24 [ТС] | ||
Но оставлю с конвертером
0
|
||
|
Модератор
|
||||||||||||
| 31.10.2022, 15:51 | ||||||||||||
1
|
||||||||||||
| 31.10.2022, 15:51 | |
|
Привязка цвета ячейки к значению другой ячейки Добавить текстовую строку к уже имеющемуся значению Binding
Изменение стиля ячейки Datagridview Создание стиля ссылки для стиля Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
|
День 5 из 28: Codex подсказывает следующий запрос
and_y87 12.10.2026
9 октября 2026 года OpenAI запустила бету Composer predictions — подсказок следующего сообщения в текущем диалоге Codex. Это помощь с формулировкой запроса, а не автоматическое продолжение задачи.
. . .
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|