|
3 / 3 / 1
Регистрация: 22.07.2022
Сообщений: 174
|
||||||||||||||||
Крашится программа при подключении Data Context27.09.2023, 18:19. Показов 2615. Ответов 67
Метки нет (Все метки)
Доброго времени суток, пишу я спокойно себе разметку, никого не трогаю и тут в один прекрасный момент при сборке вылетела ошибка, которую на протяжении нескольких часов я никак не могу решить.
В чем суть, как я понял, если я добавляю на страницу Page111 Data Context MainViewModel и оставляю все так как на первом скриншоте, то вылетает ошибка. А если я убираю DataContext, то все загружается нормально При этом, если я убираю Content = new Page111() и оставляю в XAML Data Context, то тоже все загружается нормально. А самое интересное в том, что у меня все до этого работало прекрасно, пока я не начал писать ItemControl для DockPanel. Уже голову себе всю сломал, подскажите, в чем дело)
0
|
||||||||||||||||
| 27.09.2023, 18:19 | |
|
Ответы с готовыми решениями:
67
Крашится БД при подключении через ADO
Программа крашится при нажатии Y |
|
3 / 3 / 1
Регистрация: 22.07.2022
Сообщений: 174
|
|
| 01.10.2023, 10:34 [ТС] | |
|
0
|
|
|
Модератор
|
|||
| 01.10.2023, 10:41 | |||
|
Или вы имеет ввиду, что у одного клиента все вкладки с одинаковыми ярлыками? Ну, так в ярлыке выводится имя клиента. Измените визуализацию ярлыка как вам нужно. Например задайте вывод номера TC. Добавлено через 3 минуты Для того чтобы создать приложение, нужно сначала полное нормальное ТЗ. Его даёт либо заказчик (на практике исключительно редко такое бывает), либо сам разработчик хорошо разбирается в предметной области заказника и полностью сам составляет ТЗ (тоже довольно редкий случай), либо ТЗ составляется совместными усилиями заказчика и разработчика. Последнее это наиболее типично, но требует от разработчика хотя бы поверхностного знания предметной области заказчика.
0
|
|||
|
3 / 3 / 1
Регистрация: 22.07.2022
Сообщений: 174
|
|
| 01.10.2023, 10:43 [ТС] | |
|
Элд Хасп, Вы мне подсказали очень неплохую реализацию приложения, спасибо за Ваш труд! Теперь я понял многое! Вы профессионал своего дела! Моя структура была не очень, но Ваша… она топ!
0
|
|
|
Модератор
|
||||||||||||||
| 01.10.2023, 11:10 | ||||||||||||||
|
Добавлено через 7 минут AndreyXP, смотрите ещё на такую особенность реализации. Вы добавляете ТС клиенту. Он добавляется в навигационное свойство Client.Vehicles. Но это обычный лист. И обновления представления не произойдёт. Решения два: - Заменить лист на ObservableCollection. Но получается в зависимости "от капризов" View нужно менять Репозиторий. Например, для Форм потребуется уже BindingList. Это не есть хорошо; - Не использовать свойство Client.Vehicles, а получать динамически нужные Vehicles для текущего клиента. В данном случае, так как все Vehicles уже загружены в ViewModel, это можно сделать с использованием фильтрации по SelectedClient. Но потребует немного манипуляций по прослушиванию свойства SelectedClient. Чуть позже скину реализацию. Добавлено через 16 минут
0
|
||||||||||||||
|
Модератор
|
||||||||||||||||
| 01.10.2023, 11:43 | ||||||||||||||||
|
AndreyXP, добавил реализацию "+" для новых вкладок. Это близко к типичному, привычному для современных пользователей.
Вкладка "Плюс".
0
|
||||||||||||||||
|
3 / 3 / 1
Регистрация: 22.07.2022
Сообщений: 174
|
|
| 02.10.2023, 08:45 [ТС] | |
|
Элд Хасп, Доброе утро, спасибо Вам за вашу поддержку.
За эти выходные я очень долго думал над грамотной структурой и немножко поизучал EF и понял, что знаний у меня совершенно не хватает, отсюда и проблемы с приложением в частности Я хочу продемонстрировать структуру, оцените пожалуйста и подправьте по необходимости Итак, список всех клиентов, а так же все кнопки под ним остаются без изменений, главные изменения уже идут на правую часть приложения. 1) Добавляем нового пользователя, там достаточно номер телефона и имя (Номер телефона важнее, по нему все сортировки и т.д.) 2) После добавления нового пользователя, нажимаем на ListBox, выбираем его и у нас есть 2 2 кнопки - добавить и редактировать Нажав на добавить, мы открываем новую вкладку (верхнего уровня, с Title - номер телефона), а внутри открывается вкладка нижнего уровня(Т.е. внутри вкладки верхнего уровня может разместиться несколько вкладок уже с информацией самого клиента) там будет Имя и номер нашего клиента, а под ним список его транспортных средств, если их нет, то мы можем его добавить новое Т.С.. Нажимаем, открывается вкладка с информацией О Т.С. Заполнили, сохранили, закрыли вкладку, под именем клиента появляется список его машин, справа от него появляется список визитов именно для этого Т.С. (Пустой, если визитов у ТС нет). К этому ТС мы можем добавить новый визит. Нажимаем, открывается новая вкладка с полями для заполнения визита. Сохраняем, с списке ТС появляется item его визита Редактирование будет происходить примерно по такому же сценарию. Я описал все очень условно, если есть возможность, подправьте, пожалуйста
0
|
|
|
Модератор
|
|||
| 02.10.2023, 14:55 | |||
|
Теперь по самой концепции работы с многоуровневными данными. В данном случае: Клиенты -> ТС клиента -> Визиты по этому ТС. Работа с первым уровнем: Список клиентов слева, справа подробная информация по клиенту и короткий список (или вкладки) с его ТС. При выборе ТС нужно показать более подробную информаwb. по ТС и список визитов. Но нужно ли в это время видеть список всех клиентов? Нет же необходимости переключаться из Визита, сразу на другого клиента. Поэтому когда происходит переход на работу с клиентом, список клиентов нужно скрыть. Допустим, имя клиента вывести в титул Окна. Рядом сним срелку возврата (на предудущее представление). И пока работаем с Клиентом, у нас тоже будет только двухуровневое представление: Список ТС и Список Визитов по выбранному ТС.
0
|
|||
| 02.10.2023, 14:55 | |
|
Ошибка при подключении firebird в Entity Data Model
Программа компилируется, но при выполнении крашится Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет
Новости компьютерного мира и их обсуждение (4)
Салют, шампанское, овации!
:drink:
|
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр.
Дословно, отклонённая. . .
|
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы
Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
|
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
|
|
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2.
Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
|
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
|
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
|
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
|