private void WriteProductsToFile() { string contents = JsonSerializer.Serialize(_products); File.WriteAllText(filename, contents); CatalogueChanged?.Invoke(this, new ChangeHandlerArgs()); }
public bool RemoveProduct(string name) { if (_products.Remove(_products.Find(product => product.Name.Equals(name)))) { CatalogueChanged?.Invoke(this, new ChangeHandlerArgs()); return(true); } return(false); }
private void ReadCatalogue(object sender, EventArgs e) { // Чтение каталога. CatalogueChanged?.Invoke(sender, EventArgs.Empty); // Вывод списка файлов каталога на форму. filesListBox.Items.Clear(); foreach (string file in FilesList) { filesListBox.Items.Add(file); } }
public bool UpdateProductPrice(string name, double newprice) { foreach (Product product in _products) { if (product.Name.Equals(name)) { product.Price = newprice; CatalogueChanged?.Invoke(this, new ChangeHandlerArgs()); return(true); } } return(false); }
public bool RenameProduct(string oldName, string newName) { foreach (Product product in _products) { if (product.Name.Equals(oldName)) { product.Name = newName; CatalogueChanged?.Invoke(this, new ChangeHandlerArgs()); return(true); } } return(false); }
/// <summary> /// Invokes CatalogueChanged and writes updates to json file. /// </summary> private void OnCatalogueChanged() { CatalogueChanged?.Invoke(this, new EventArgs()); WriteToFile(); }
public void AddProduct(Product p) { _products.Add(p); CatalogueChanged?.Invoke(this, new ChangeHandlerArgs()); }