Korzystam z wbuowanej przeglądarki. Ładuję stronę z formaularzem, wypełniam go, a gdy konto założy pomyślnie to na podstawie linku (przejścia do innej strony) zapisuję potrzebne dane do zmiennych. I to działa.
Dodałem teraz numericUpDown1 po to, aby po utworzeniu nowego konta, automatycznie przechodził do tworzenia kolejnego, dopóki wartość z tego licznika będzie większa od 0. I tu pojawia się problem.
Mam funkcję, którą wykonuję, gdy konto zostanie utworzone pomyślnie:
private void pomyslne_zal()
{
label.Text = "Konto założono pomyślnie.";
liczba_kont++;
webBrowser1.Stop();
numericUpDown1.Value--;
button1.PerformClick();
}
gdzie button1 jest odpowiedzialny za utworznie nowego konta:
private void button1_Click(object sender, EventArgs e)
{
if (numericUpDown1.Value > 0)
utworz_konto();
}
I teraz powinno być tak, że gdy utworzy nowe konto, to automatycznie odbywa się symulacja kliknięcia przycisku button1, sprawdzana jest wartość numericUpDown1 i jeżeli jest poprawna, to zostaje załadowana ponownie strona z formualrzem (funkcja utworz_konto). A niestety tak się nie dzieje.
Po utworzenie konta przeglądarka "zacina się" - białe tło. Lecz gdy kliknę na niej prawym przyciskiem myszy, wybiorę właściwości, a potem OK lub Anuluj to dopiero wtedy ładuje się nowy formularz, tak jak chciałem, żeby załadował się od razu.
Co może być przyczyną tego problemu i jak to naprawić? Myślałem, że to może przez webBrowser1.Stop() ale zakomentowanie tej funkcji nie daje lepszych rezulatatów.
EDIT:
Dodałem fragment, który otwiera mi właśnie właściwości;
webBrowser1.Stop();
numericUpDown1.Value--;
webBrowser1.ShowPropertiesDialog();
SendKeys.Send("{ENTER}");
button1.PerformClick();
Pokazuje się okienko, gdzie trzeba wcisnąć enter lub kliknąć OK. Lecz samo wysłanie SendKeys.Send("{ENTER}") nic nie pomaga. Da się jakoś inaczej automatycznie wysłać enter? Może trzeba jakiś focus ustawić??