private void cbxTypes_SelectedIndexChanged(object sender, EventArgs e) { lvwEstoqueItems.Items.Clear(); cbxTipos.Text = ""; pbxEstoqueItem.Image = null; if (items.Count == 0) { return; } string strCategoria = (string)cbxCategorias.SelectedItem; string strType = (string)cbxTipos.SelectedItem; lvwEstoqueItems.Items.Clear(); for (int i = 0; i < items.Count; i++) { EstoqueItem item = (EstoqueItem)items[i]; if ((item.Category == strCategoria) && (item.Type == strType)) { ListViewItem lviStoreItem = lvwEstoqueItems.Items.Add(item.ItemNumber); lviStoreItem.SubItems.Add(item.ItemName); lviStoreItem.SubItems.Add(item.UnitPrice.ToString("F")); } } }
private void cbxCategories_SelectedIndexChanged(object sender, EventArgs e) { cbxTipos.Items.Clear(); cbxTipos.Text = ""; lvwEstoqueItems.Items.Clear(); pbxEstoqueItem.Image = null; if (items.Count == 0) { return; } string strCategoria = (string)cbxCategorias.SelectedItem; cbxTipos.Items.Clear(); for (int i = 0; i < items.Count; i++) { EstoqueItem item = (EstoqueItem)items[i]; if (item.Category == strCategoria) { if (!cbxTipos.Items.Contains(item.Type)) { cbxTipos.Items.Add(item.Type); } } } }
private void ItemEditor_Load(object sender, EventArgs e) { // Desde que todos os valores estao prontos , prepara o processamento do item EstoqueItem item = new EstoqueItem(); EstoqueItems items = new EstoqueItems(); BinaryFormatter bfmEstoqueItem = new BinaryFormatter(); // This is the file that holds the list of items string nomeArquivo = @"C:\InstrumentosMusicais\Dados\EstoqueItems.mis"; if (File.Exists(nomeArquivo)) { FileStream stmArmazenaItem = new FileStream(nomeArquivo, FileMode.Open, FileAccess.Read, FileShare.Read); try { // retorna a lista de itens do arquivo items = (EstoqueItems)bfmEstoqueItem.Deserialize(stmArmazenaItem); // exibe as categorias no combobox for (int i = 0; i < items.Count; i++) { item = (EstoqueItem)items[i]; if (!cbxCategorias.Items.Contains(item.Category)) { cbxCategorias.Items.Add(item.Category); } } // exibe os tipos de itens no the combo box for (int i = 0; i < items.Count; i++) { item = (EstoqueItem)items[i]; if (!cbxTipos.Items.Contains(item.Type)) { cbxTipos.Items.Add(item.Type); } } } finally { stmArmazenaItem.Close(); } } else { // Cria um numero aleatorio para identificar um item Random rnd = new Random(); txtItemNumero.Text = rnd.Next(100000, 999999).ToString(); // verifica se o usuário selecionou a categoria cbxCategorias.Text = ""; cbxTipos.Text = ""; } }
public virtual bool Equals(EstoqueItem same) { if ((nbr == same.nbr) && (cat == same.cat) && (tp == same.tp) && (nm == same.nm) && (prc == same.prc)) { return(true); } else { return(false); } }
void LoadLojaMusical() { string caminhoDados = @"C:\InstrumentosMusicais\Dados\"; //processa o item items = new EstoqueItems(); BinaryFormatter bfmEstoqueItem = new BinaryFormatter(); // arquivo que trata os itens string nomeArquivo = caminhoDados + "EstoqueItems.mis"; if (File.Exists(nomeArquivo)) { FileStream stmEstoqueItem = new FileStream(nomeArquivo, FileMode.Open, FileAccess.Read, FileShare.Read); try { // retorna lista de itens items = (EstoqueItems)bfmEstoqueItem.Deserialize(stmEstoqueItem); // Exibe as categorias no cambobox for (int i = 0; i < items.Count; i++) { EstoqueItem item = (EstoqueItem)items[i]; if (!cbxCategorias.Items.Contains(item.Category)) { cbxCategorias.Items.Add(item.Category); } } } finally { stmEstoqueItem.Close(); } } }
private void lvwStoreItems_SelectedIndexChanged(object sender, EventArgs e) { EstoqueItem item = new EstoqueItem(); if ((lvwEstoqueItems.SelectedItems.Count == 0) || (lvwEstoqueItems.SelectedItems.Count > 1)) { return; } string strItemNumero = lvwEstoqueItems.SelectedItems[0].SubItems[0].Text; for (int i = 0; i < items.Count; i++) { EstoqueItem itm = (EstoqueItem)items[i]; if (itm.ItemNumber == strItemNumero) { item = itm; } } // faz uma lista de imagens string strDiretorio = caminhoDados; DirectoryInfo dirEstoqueItems = new DirectoryInfo(strDiretorio); FileInfo[] ArquivoImagens = dirEstoqueItems.GetFiles("*.jpg"); // procurar por arquivo que trata o mesmo nome do numero do item foreach (FileInfo fle in ArquivoImagens) { // Pega o nome do arquivo sem extensaõ string fwe = Path.GetFileNameWithoutExtension(fle.FullName); if (fwe == strItemNumero) { pbxEstoqueItem.Image = Image.FromFile(strDiretorio + item.ItemNumber + ".jpg"); } } }
private void btnCriar_Click(object sender, EventArgs e) { FileStream stmArmazenaItem = null; EstoqueItem item = new EstoqueItem(); EstoqueItems items = new EstoqueItems(); BinaryFormatter bfmEstoqueItem = new BinaryFormatter(); // se o diretorio nao existe então cria Directory.CreateDirectory(@"C:\InstrumentosMusicais\Dados"); // este arquivo trata a lista de itens string nomeArquivo = @"C:\InstrumentosMusicais\Dados\EstoqueItems.mis"; // Cria um no aleatorio para identificar o item Random rnd = new Random(); txtItemNumero.Text = rnd.Next(100000, 999999).ToString(); // verifica se o usuário selecionou a categoria if (cbxCategorias.Text.Length == 0) { MessageBox.Show("Você deve definir a categoria do item"); cbxCategorias.Focus(); return; } // verifica se o usuário selecionou um tipo if (cbxTipos.Text.Length == 0) { MessageBox.Show("Você deve definir o tipo do item"); cbxTipos.Focus(); return; } // verifica se o usuário informou o nome/descrição if (txtItemNome.Text.Length == 0) { MessageBox.Show("Você deve informar o nome (ou uma " + "breve descrição) para o item"); txtItemNome.Focus(); return; } // verifica se o preco foi informado if (txtPrecoUnitario.Text.Length == 0) { MessageBox.Show("Você deve informar o preço do item"); txtPrecoUnitario.Focus(); return; } // Ante de salvar um novo item, pesquisa se ja existe // um arquivo que trata a lista de itens // Se exisitr abre o arquivo e armazena os itens // na lista if (File.Exists(nomeArquivo)) { stmArmazenaItem = new FileStream(nomeArquivo, FileMode.Open, FileAccess.Read, FileShare.Read); try { // retorna a lista de itens do arquivo items = (EstoqueItems)bfmEstoqueItem.Deserialize(stmArmazenaItem); } finally { stmArmazenaItem.Close(); } } // Cria o item item.ItemNumber = txtItemNumero.Text; item.Category = cbxCategorias.Text; item.Type = cbxTipos.Text; item.ItemName = txtItemNome.Text; item.UnitPrice = double.Parse(txtPrecoUnitario.Text); // Cham o méodo Add da coleção para adicioar o item items.Add(item); // Save the list stmArmazenaItem = new FileStream(nomeArquivo, FileMode.Create, FileAccess.Write, FileShare.Write); try { bfmEstoqueItem.Serialize(stmArmazenaItem, items); if (txtCaminhoImagem.Text.Length != 0) { FileInfo arqImagem = new FileInfo(txtCaminhoImagem.Text); arqImagem.CopyTo(@"C:\InstrumentosMusicais\Dados\" + txtItemNumero.Text + arqImagem.Extension); } // após salvar o item reseta o formulário txtItemNumero.Text = rnd.Next(100000, 999999).ToString(); cbxCategorias.Text = ""; cbxTipos.Text = ""; txtItemNome.Text = ""; txtPrecoUnitario.Text = "0.00"; txtCaminhoImagem.Text = ""; pbxItemEstoque.Image = null; } finally { stmArmazenaItem.Close(); } }