Witam,
Na początek... tak wiem, że to pytanie w podobnych formach padało wiele razy, ale przejrzałem forum i nadal nie potrafię sobie poradzić z tym problemem.
A teraz co do pytania.
Mam taką oto metodę:
public void textBox_LeavingInt(object sender, EventArgs e)
{
TextBox x = (TextBox)sender;
if (x.Text != "")
{
try
{
string do_pomiar = x.Text.Replace(",", ".");
double do_int = Int32.Parse(do_pomiar, enUS);
x.Text = do_int.ToString().Replace(",", ".");
}
catch
{
MessageBox.Show("Musisz wprowadzić liczbę całkowitą", "Błąd", MessageBoxButtons.OK, MessageBoxIcon.Error);
x.Text = null;
x.Select();
}
}
}
Metoda ma za zadanie przeczytać zawartość textboxa i na jej podstawie "zareagować".
Teraz pytanie jest takie, w jaki sposób można napisać tą metodę tak abym nie musiał jej umieszczać w każdym formie gdzie chcę użyć tego sprawdzenia.
Gdzieś przeczytałem, że aby wywołać metodę z innego miejsca (klasy) potrzeba zadeklarować metodę jako statyczną. Tak więc wyrzeźbiłem coś takiego:
namespace Aplikacja.Classes
{
public class ClassLiczby
{
static CultureInfo enUS = CultureInfo.CreateSpecificCulture("en-US");
static void textBox_LeavingInt(object sender, EventArgs e)
{
TextBox x = (TextBox)sender;
if (x.Text != "")
{
try
{
string do_pomiar = x.Text.Replace(",", ".");
double do_int = Int32.Parse(do_pomiar, enUS);
x.Text = do_int.ToString().Replace(",", ".");
}
catch
{
MessageBox.Show("Musisz wprowadzić liczbę całkowitą", "Błąd", MessageBoxButtons.OK, MessageBoxIcon.Error);
x.Text = null;
x.Select();
}
}
}
}
}
Pytanie jednak, jak teraz odwołać się do tej metody z innego miejsca?
Podejrzewam, że coś zwaliłem, ale naprawdę już troszkę nad tym siedzę i nie jestem w stanie sobie poradzić. Będę wdzięczny za pomoc.