Статья подразумевает минимальные навыки пользователя, для работы
Для начала разграничим главную страницу , на 3 строки и добавим несколько элементов:
- Кнопка
- Картинка
- Заголовок
- И Frame
Далее нужно прописать кнопке действие, что она будет делать
Так-же добавим свойство Navigated для MainFrame, чтобы кнопку не было видно, когда переходить назад некуда
Создаём страницу Авторизация
Внутри нужно разместить 2 текстовых поля , название для этих полей и кнопку
И сейчас , самое сложное на этой странице .Нужно добавить обработчик ошибок , чтобы избежать фатальных ошибок программы.После этого сравниваем данные введённые в поле TBoxLogin с полем в базе UserLogin
Если наша переменная currentUser не пустая , то сравниваем поле логина и пароля соответственно , если данные верные, то мы переходит на следующую страницу ProductPage
Разграничиваем страницу на 3 строки, чтобы разместить фильтры , фрэйм и кнопку добавить .
Так-же добавляем ListView , для вывода данных из базы,и биндим textblock для вывода желаемых строк из базы.
Для начала выведем данные в ListView , через List.
Аналогично с ListView выводим данные для ComboBox, но для него необходимо задать, что куда выводить .
В DisplayMemberPath = поле, в котором хранится название,
а в SelectedValuePath =поле с id .
Так-же необходимо указать 0 индификатор в SelectedIndex
Далее мы рассмотрим работу поисковой строки и двух combobox
Для того, чтобы с ними работать создаём переменную product и выводим в неё данные из таблицы Product.
Для ComboBox работающим не от базы, делается всё очень просто, сортируется по возрастанию и по убыванию
А для другого ComboBox уже чуть сложнее , приводим значения к string и сравниваем .
Для поиска мы приводим к одному типу и через Contains ищем в TBoxSearch похожее на то, что содержится в поле , которое мы указали , в данном случае ProductCost.
Для того, что-бы это обновлялось корректно добавим LViewProduct.ItemSource = product;
Перейдём к добавлению и редактированию
Для начала , сделаем обработку нажатия и перенос на страницу AddEditProductPage
Для кнопки добавления делаем аналогично
Разграничиваем страницу и переходим к самому сложному .
Для начала создаем переменную currentProduct и делаем её пустой
В страницу передаём Entities edit , Product product
В условии передаём Полям значения из базы
Сделайте обработчик try , во избежании критических ошибок приложения
Роли для отображения кнопок по ролям