Boa tarde, Estou fazendo uma aplicação windows forms que onde o usuário vota nos indicados ao prêmio Jogo Do Ano em várias categorias (uma por form). Primeiro ele teria que digitar o próprio nome em uma textbar e ao clicar em um botão, um arquivo será criado possuindo esse mesmo nome, dessa forma:
public partial class PaginaInicialForm : Form
{
public PaginaInicialForm()
{
InitializeComponent();
}
private void TextBox1_TextChanged(object sender, EventArgs e)
{
btnProximo1.Enabled = true;
}
private void Button1_Click(object sender, EventArgs e)
{
//Criar arquivo com nome digitado
var arquivo = tbNome.Text;
using (var fluxoDeArquivo = new FileStream(arquivo, FileMode.Create))
using (var escritor = new StreamWriter(fluxoDeArquivo, Encoding.UTF8))
{
escritor.WriteLine(tbNome.Text);
escritor.Flush();
}
//Chamada do próximo form
this.Hide();
GameOfTheYearForm form2 = new GameOfTheYearForm();
form2.Show();
}
}
No segundo form, ele irá votar no jogo que escolher e eu queria poder escrever esse voto no mesmo arquivo, previamente criado. Tentei fazer dessa forma:
public partial class GameOfTheYearForm : Form
{
public GameOfTheYearForm()
{
InitializeComponent();
CarregarCbb();
}
private void BtnConfirma1_Click(object sender, EventArgs e)
{
MessageBox.Show("Voto Confirmado!");
PaginaInicialForm form1 = new PaginaInicialForm();
var arquivo = form1.tbNome.Text.ToString();
using (var fluxoDeArquivo = new FileStream(arquivo, FileMode.Append))
using (var escritor = new StreamWriter(fluxoDeArquivo, Encoding.UTF8))
{
escritor.WriteLine($"Jogo do ano selecionado: {cbbJogoDoAno.Text.ToString()}");
escritor.Flush();
}
btnNext1.Enabled = true;
}
}
Mas no segundo form, ao clicar no botão e fechar a MessageBox, eu recebo uma exceção falando que o caminho está vazio. Como se não houvesse mais nenhuma informação escrita no TextBoxdo form anterior. Queria saber se tem alguma solução simples para isso...
Desde já agradeço.