|
0 / 0 / 0
Регистрация: 29.04.2024
Сообщений: 10
|
||||||||||||||||||||||||||
Взаимодействие UserControl, ContentControl и SelectedItem в Listbox30.04.2024, 11:59. Показов 9080. Ответов 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 - обращение к несуществующему объекту Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek
ВВЕДЕНИЕ
Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
|
|
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
|
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2.
Задача:
Обеспечить запись документа в регистр сведений независимо от. . .
|
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется.
Ну как вам?
|
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания
источниках данных и элементов формы(текстовые поля и метки), опирается все
это на технологию событий и мета. . .
|