123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- using Microsoft.Win32;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Data;
- using System.Windows.Documents;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Imaging;
- using System.Windows.Shapes;
- namespace Test
- {
- /// <summary>
- /// Логика взаимодействия для WindowRed.xaml
- /// </summary>
- public partial class WindowRed : Window
- {
- Materials vm = new Materials(); //инициализируем вьюмодел
- Material material; //создаем буферный
- string newimg; //строка под путь новой картинки
- public WindowRed(Material idmat)
- {
- InitializeComponent();
- DataContext = idmat;//заполняем страницу данными материала, который из основной страницы передали
- material = idmat;
- CB2.ItemsSource = Base.Ent.MaterialType.Where(x => x.ID < 5).ToList();
- CB2.SelectedValue = "ID";
- CB2.DisplayMemberPath = "Title";
- CB2.SelectedIndex = (int)material.MaterialTypeID - 1;
- }
- private void Button_Click(object sender, RoutedEventArgs e)
- {
- try
- {
- OpenFileDialog openFileDialog = new OpenFileDialog();
- openFileDialog.DefaultExt = ".jpg";
- openFileDialog.Filter = "Изображения |*.jpg;*.png";
- var result = openFileDialog.ShowDialog();
- if (result == true)
- {
- newimg = openFileDialog.FileName;
- img.Source = BitmapFrame.Create(new Uri(newimg));
- }
- }
- catch
- {
- MessageBox.Show("Выбран невалидный файл");
- }
- }
- private void Button_Click_1(object sender, RoutedEventArgs e)
- {
- try
- {
- string str = Cost.Text.Replace(".", ",");
- material.Title = Title.Text;
- material.MaterialTypeID = CB2.SelectedIndex + 1;
- material.CountInStock = Convert.ToInt32(CountInStock.Text);
- material.Unit = Unit.Text;
- material.CountInPack = Convert.ToInt32(CountInPack.Text);
- material.MinCount = Convert.ToInt32(MinCount.Text);
- material.Cost = Convert.ToDecimal(str);
- material.Image = newimg;
- material.Description = Description.Text;
- material.Cost = Math.Round(material.Cost, 2);
- if (material.MinCount > 0 && material.Cost > 0)
- {
- Base.Ent.SaveChanges(); //сохраняем изменение
- vm.material = vm.NewMaterial(); //запускаем метод из вьюмодела
- ClassNavigate.Tyomich.Navigate(new Page1());
- }
- else
- {
- throw new Exception("Минимальное количесво и стоимость не могут быть отрицательными");
- }
- }
- catch (Exception message)
- {
- MessageBox.Show("Ошибка данных" + message);
- }
- }
- private void Button_Click_2(object sender, RoutedEventArgs e)
- {
- try
- {
- Material delite = Base.Ent.Material.FirstOrDefault(x => x.ID == material.ID);
- Base.Ent.Material.Remove(delite);//удаляем
- Base.Ent.SaveChanges(); //сохраняем изменения
- Materials vm = new Materials(); //переинициализируем вьюмодел
- MessageBox.Show("Удалил");
- ClassNavigate.Tyomich.Navigate(new Page1());
- }
- catch
- {
- MessageBox.Show("Запись связана. Ее удаление не может быть выполнено");
- }
- }
- }
- }
|