|
0 / 0 / 0
Регистрация: 29.04.2024
Сообщений: 10
|
||||||||||||||||||||||||||
Взаимодействие UserControl, ContentControl и SelectedItem в Listbox30.04.2024, 11:59. Показов 9072. Ответов 77
Метки wpf usercontrol (Все метки)
Доброго утра!
Каждый элемент Listbox содержит путь к картинке, которая должна показываться в ContentControl с помощью свойства SelectedItem:
В Listbox используется Expander. Проблема в том, что SelectedItem ListBox никак не хочет коннектиться с HomeView, в котором отображается картинка. Хотя другие публичные свойства (не из ListBox) нормально биндятся в HomeView и отображаются в contentControl MainWindow.xaml. Listbox размещен в MainWindow.xaml:
Я так понимаю, что SelectedItem надо как то иначе обрабатывать, вопрос как это делать?
0
|
||||||||||||||||||||||||||
| 30.04.2024, 11:59 | |
|
Ответы с готовыми решениями:
77
Убрать SelectedItem в ListBox |
|
0 / 0 / 0
Регистрация: 29.04.2024
Сообщений: 10
|
|
| 02.05.2024, 16:57 [ТС] | |
|
Andrey-MSK, в перспективе использование DI следует изучить, но здесь и сейчас в моем случае статичный экземпляр класса проще использовать. Но, спасибо)
0
|
|
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
|
| 02.05.2024, 17:18 | |
|
employee19, пример навигации можете изучить тут или тут в обоих случаях все работает без библиотек.
Про di(Dependency Injection) можете тут что то изучить но тут уже придется использовать библиотеку.
1
|
|
|
|
||
| 02.05.2024, 17:26 | ||
0
|
||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
||
| 02.05.2024, 17:31 | ||
У меня нету опыта c di ибо использую все самописное: локаторы или навигаторы и т.пЕсли у вас есть ссылки на примеры, то можете прикрепить их в сообщение, для автора вопроса это точно будет полезно и взято на заметку
0
|
||
|
|
|
| 02.05.2024, 17:37 | |
|
xellan24rus, Да там ничего сложного. Просто регистрировать и взаимодействовать с сервисами VM и View нужно через интерфейсы, в которых все нужные свойства и методы объявлены. Интерфейсы закинуть в какую-нибудь сборку, которая не будет ссылаться на платформозависимые ресурсы, а реализацию раскидать по нужным слоям, платформозависимые в слой View и в App всё связать. Покажу на своём проекте, напишу комментарии, но попозже
1
|
|
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
||
| 02.05.2024, 17:47 | ||
|
Andrey-MSK, я видел реализации в каких то исходниках, но примеры не найду уже. И di не использую, так как склоняюсь к изучению wpf и все реализации пишу без использования библиотек, чтобы во всём разобраться самому и знать как что чинить, в готовых решениях не всегда есть что хочется) К примеру material design для меня бесполезен ибо то что там есть меня не устраивает, пришлось написать свой проект с реализациями под себя
0
|
||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
|
| 02.05.2024, 21:26 | |
|
Элд Хасп, я пробовал сделать только свойство статическим, но это не дало результата в плане: чтобы в одном окне правил, а в другом свойство обновляло значение.
0
|
|
|
Модератор
|
|
| 02.05.2024, 21:34 | |
|
0
|
|
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
|||||||||||||||||||||
| 02.05.2024, 23:28 | |||||||||||||||||||||
|
Элд Хасп, или я не понял или это не работает. Убрал лишний код с примера оболочки, оставил только свойства.
Есть vm с примерa для главного окна
Значения задаю в конструкторе
0
|
|||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 03.05.2024, 09:56 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
xellan24rus, employee19, Вот пример. Букав много, но оно того стоит
![]() 1. В сборке View создаём свойство для диалогов, которое будет возвращать результат нажатия кнопки Ok
xellan24rus, employee19, 6. В классе Application запускаем всё это дело, предварительно установив из NuGet
2
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Модератор
|
|
| 03.05.2024, 12:01 | |
|
xellan24rus, ответ в этой теме: Статические свойства с автообновлением представления
1
|
|
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
||||||
| 03.05.2024, 17:02 | ||||||
|
Элд Хасп, спасибо) вот так вот сделал, теперь нет нужды ради одного свойства делать инстанс всей vm)
Но в коде инстанс всей vm и отдельного свойства, стирать ничего не стал. Кликните здесь для просмотра всего текста
Добавлено через 5 минут Andrey-MSK, спасибо за пример) А исходник есть такой?) В нем разобраться быстрее
0
|
||||||
|
|
|||||
| 06.05.2024, 08:33 | |||||
![]() CommandManager для работы RelayCommand.
1
|
|||||
|
0 / 0 / 0
Регистрация: 29.04.2024
Сообщений: 10
|
|
| 06.05.2024, 10:34 [ТС] | |
|
xellan24rus, Andrey-MSK, не подскажите, где или как подсунуть SelectedItem, который в ListBox, нужное мне значение, дефолтное, вроде noname или вообще null. Ведь сразу после показа окна значение в нем устанавливается, равное первому из ListBox.
Upd, в Window_Loaded присвоил SelectedIndex = -1
0
|
|
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
||||||||||||
| 06.05.2024, 21:43 | ||||||||||||
|
employee19, для SelectedItem вы задаете в vm свойство, при загрузке просто укажите нужное значение в для привязанного свойства у SelectedItem.
Примерно так tackPanel>
0
|
||||||||||||
|
|
|||
| 06.05.2024, 21:54 | |||
|
0
|
|||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
||||
| 06.05.2024, 22:15 | ||||
|
Вот пример При этом если удалить SelectedIndex="0" То отображается корректно
0
|
||||
|
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
|
|
| 06.05.2024, 22:16 | |
|
В примере указаны одни и те же данные, так что по логике они имеют одну ссылку на источник
0
|
|
|
|
||||
| 06.05.2024, 22:26 | ||||
|
xellan24rus, если исходить из того, что OnPropertyChanged нужен только для обновления View, то сам View их генерит самостоятельно, т.к. мы, собственно, по этим элементам сами "стучим".
Добавлено через 5 минут
0
|
||||
| 06.05.2024, 22:26 | |
|
SelectedItem не работает у ListBox Не работает SelectedItem Binding в ListBox
SelectedItem в listbox последнего элемента listBox.SelectedItem - обращение к несуществующему объекту Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2.
Задача:
Обеспечить запись документа в регистр сведений независимо от. . .
|
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется.
Ну как вам?
|
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания
источниках данных и элементов формы(текстовые поля и метки), опирается все
это на технологию событий и мета. . .
|
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml,
в чате форсили функторы модулей как суперфичу.
Пытаясь отдуплить концепт, наткнулся на тутор с простым примером.
А главный принцип обучения от. . .
|
|
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
|
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
|
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства.
Жизнь действительно предъявляет каждому. . .
|
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
|