Empecé nuevamente desde cero, quité el ¨Timer¨para ir resolviendo el problema de a poco.
Así va quedando el nuevo código...
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnIniciar_Click(object sender, EventArgs e)
{
letra = GeneradorLetra();
lblEtiqueta.Text = letra;
/*
* Como puedo llamar al metodo Form1_Keypress(object, KeyPressEventArgs) desde aqui??
* Me pide dos argumentos y no se como pasarlos desde este punto.
*/
}
private string GeneradorLetra()
{
Random aleatorio
= new Random
(); int i = aleatorio.Next(0, 7);
string[] seleccion = { "A", "B", "C", "D", "E", "F", "G" };
return seleccion[i];
}
private void Form1_KeyPress(object sender, KeyPressEventArgs e) //Aun sin funcionar
{
string teclaOprimida = e.KeyChar.ToString();
if (letra == teclaOprimida)
{
lblEtiqueta.ForeColor = Color.Green;
}
else
{
lblEtiqueta.ForeColor = Color.Red;
}
}
string letra;
}
Me gustaría llamar al método Form1_KeyPress() desde el método btnIniciar_Click(), no entiendo como podría pasar los argumentos (creo que se les denomina de ¨Control¨) desde ese punto. Supongo que la solución sería parecida para implementar los métodos del Timer.