none
Como fazer um botão de editar formulário em c#? RRS feed

  • Discussão Geral

  • Preciso que, ao clicar no botão editar no formulário onde se encontra minha gridviews (FORM PRINCIPAL), abra um novo form com os dados selecionados para alteração (FORM DE EDIÇÃO).

    Meu form de edição recebe os dados da grid normalmente, mas não salva. O que pode ser?

    CODIGO DO FORM PRINCIPAL

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using SistemaSinos.DAL;
    namespace SistemaSinos
    {
    public partial class frmUsuarios : Form
    {
    public frmUsuarios()
    {
    InitializeComponent();
    }
    private void frmUsuarios_Load(object sender, EventArgs e)
    {
    this.usuarioBindingSource.DataSource = DataContextFactory.DataContext.Usuario;
    }
    private void textBox1_TextChanged(object sender, EventArgs e)
    {
    CurrencyManager cm = (CurrencyManager)BindingContext[usuarioDataGridView.DataSource];
    cm.EndCurrentEdit();
    cm.ResumeBinding();
    cm.SuspendBinding();
    var termo = (sender as TextBox).Text.ToLowerInvariant();
    bool semTermo = String.IsNullOrEmpty(termo);
    foreach (DataGridViewRow linha in usuarioDataGridView.Rows)
    {
    if ((linha.Cells[dataGridViewTextBoxColumn4.Index].Value as string).ToLowerInvariant().Contains(termo) || semTermo)
    linha.Visible = true;
    else
    linha.Visible = false;
    }
    }
    private void btn_cancelar_Click(object sender, EventArgs e)
    {
    this.Close();
    }
    private void btn_novo_Click(object sender, EventArgs e)
    {
    frmUsuariosAdd frm = new frmUsuariosAdd();
    frm.Show();
    this.Close();
    }
    private void btn_excluir_Click(object sender, EventArgs e)
    {
    
    if (MessageBox.Show("Tem certeza que deseja excluir esse funcionário?", "Confirmação", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
    {
    this.usuarioBindingSource.RemoveCurrent();
    DataContextFactory.DataContext.SubmitChanges();
    MessageBox.Show("Funcionário/usuário excluído com sucesso!");
    }
    }
    private void button1_Click(object sender, EventArgs e)
    {
    try
    {
    
    DataGridViewRow linha = new DataGridViewRow();
    linha = usuarioDataGridView.CurrentRow;
    frmUsuariosEdt alt = new frmUsuariosEdt();
    
    alt.preencher(
    linha.Cells["dataGridViewTextBoxColumn4"].Value.ToString(), //id
    linha.Cells["dataGridViewTextBoxColumn4"].Value.ToString(), //nome
    linha.Cells["dataGridViewTextBoxColumn7"].Value.ToString(), //email
    linha.Cells["Senha"].Value.ToString(), //senha
    linha.Cells["dataGridViewTextBoxColumn5"].Value.ToString(), // situacao
    linha.Cells["dataGridViewTextBoxColumn6"].Value.ToString(), // sexo
    linha.Cells["dataGridViewTextBoxColumn8"].Value.ToString(), //endereco
    linha.Cells["dataGridViewTextBoxColumn9"].Value.ToString(), //numero
    linha.Cells["dataGridViewTextBoxColumn10"].Value.ToString(), //bairro
    linha.Cells["dataGridViewTextBoxColumn11"].Value.ToString(), //cep
    linha.Cells["dataGridViewTextBoxColumn12"].Value.ToString(), //cidade
    linha.Cells["dataGridViewTextBoxColumn13"].Value.ToString(), //estado
    linha.Cells["dataGridViewTextBoxColumn14"].Value.ToString()); //fone 
    alt.ShowDialog(this);
    }
    catch
    {
    MessageBox.Show("Não é possivel alterar um registro inexistente, clique em Incluir para inserir um novo!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
    }
    }
    }
    }

    CODIGO DO FORM DE EDIÇÃO

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using SistemaSinos.DAL;
    
    namespace SistemaSinos
    {
    public partial class frmUsuariosEdt : Form
    {
    public frmUsuariosEdt()
    {
    InitializeComponent();
    }
    private void frmUsuariosEdt_Load(object sender, EventArgs e)
    {
    
    this.usuarioBindingSource.DataSource = DataContextFactory.DataContext.Usuario;
    
    }
    public void preencher(string idUsuario, string dataGridViewTextBoxColumn4, string dataGridViewTextBoxColumn7, 
    string Senha, string dataGridViewTextBoxColumn8, string dataGridViewTextBoxColumn9, string dataGridViewTextBoxColumn10, 
    string dataGridViewTextBoxColumn12, string dataGridViewTextBoxColumn11, string dataGridViewTextBoxColumn13, 
    string dataGridViewTextBoxColumn6, string dataGridViewTextBoxColumn5, string dataGridViewTextBoxColumn14)
    
    {
    //parametros para passar os dados do grid
    idUsuarioTextBox.Text = idUsuario;
    nomeTextBox.Text = dataGridViewTextBoxColumn4;
    senhaTextBox.Text = Senha;
    emailTextBox.Text = dataGridViewTextBoxColumn7;
    enderecoTextBox.Text = dataGridViewTextBoxColumn8;
    numeroTextBox.Text = dataGridViewTextBoxColumn9;
    bairroTextBox.Text = dataGridViewTextBoxColumn10;
    cidadeTextBox.Text = dataGridViewTextBoxColumn12;
    cepTextBox.Text = dataGridViewTextBoxColumn11;
    estadoTextBox.Text = dataGridViewTextBoxColumn13;
    sexoComboBox.Text = dataGridViewTextBoxColumn6;
    situacaoComboBox.Text = dataGridViewTextBoxColumn5;
    foneTextBox.Text = dataGridViewTextBoxColumn14;
    
    }
    private void btn_salvar_Click(object sender, EventArgs e)
    {
    
    DataContextFactory.DataContext.SubmitChanges();
    MessageBox.Show("Usuário editado com sucesso!");
    this.Close();
    frmUsuarios frm = new frmUsuarios();
    frm.Show();
    }
    }
    }

    sOCORRO!

    segunda-feira, 31 de julho de 2017 18:02