Witam,
Jestem dość tępy i nie potrafię szukać rozwiązań, utknąłem w pewnym miejscu przy robieniu gry Sudoku i nie wiem co robić dalej.
public TextBox[,] Tablica = new TextBox[9, 9];
public void Start_Gra_Click(object sender, EventArgs e)
{
Tablica0 = Lvl();
for (int X = 0; X < 9; X++)
{
for (int Y = 0; Y < 9; Y++)
{
Tablica[X, Y] = new TextBox();
Tablica[X, Y].MaxLength = 1;
Tablica[X, Y].FontSize = 25;
Tablica[X, Y].HorizontalAlignment = Center;
if (Tablica0[X, Y] == 0) {}
else { Tablica[X,Y].Text = Tablica0[X, Y].ToString(); }
Tablica[X, Y].TextChanged += Tablica_TextChanged;
SudokuGrid.Children.Add(Tablica[X,Y]);
Grid.SetRow(Tablica[X, Y], X);
Grid.SetColumn(Tablica[X, Y], Y);
}
}
}
^Tutaj wszystko akurat jest spoko, dynamicznie eventy są dodawane bla bla bla.
void Tablica_TextChanged(object sender, EventArgs e)
{
TextBox Tb = (TextBox)sender;
if (Regex.IsMatch(((TextBox)sender).Text, "([^1-9])"))
{
((TextBox)sender).Text = "";
}
}
^Tutaj mam już schodki, o ile mam już możliwość, aby w textboxie występowały tylko liczby od 1-9 oraz długości równej 1, a mianowicie jak zrobić, abym w momencie zmieniania wartości w którymś z textboxow (załóżmy o indexie [4,5]) kod będzie pobierał indexy tego texblocka w którym coś wpisaliśmy. nie mam bladego pojęcia jak zrobić coś takiego, a na inny pomysł nie mogę wpaść zbytnio
Gdyby ktoś mnie nie rozumiał, bo mnie nikt nie rozumie to co gadam (za głupi jestem) dołączę graficzną wersje tego, co chciałem powiedzieć
(take note: na screenie widać textboxy i texblocki, obecnie są to same texblocki)
Czerwony kwadrat - przykładowy textbox, w którym wpisuję jakąś wartość
niebieskie linie to pętla która by przeczesywała Indexy tego Textboxa, w którym coś wpisaliśmy następująca [1-9, 5] a następnie [4, 1-9]. (przykładowy index: [4,5]) Jednak nie wiem jak zrobić, aby odgórnie wybrać indexy wybranego textboxa w którym coś wppisywaliśmy