maskedtextbox

0

Na formie nam 19 texboxów i jednego maskedtextboxa. Wszystkie pola wypełnione są teksem. Wszystkie pola dla zdarzenia Click() maja przypisany kod SelectAll(). Kiedy przechodzę TAB-em po kolei po wszystkich polach kolejno zaznacza się cały tekst w texboxach ale nie w maskedtextboxsie. Dlaczego? Jakiej metody, zdarzenie użyć dla tej kontrolki?

0

Użyj zdarzenia Enter albo GotFocus.

0

Niestety maskedtextbox nie ma takiego zdarzenia jak gotfocus(), a enter nie działa (tekst w kontrolce nie zaznacza się a kursor staje na końcu tekstu)

0

Nie wiem dlaczego ale taki kod u mnie działa. Cały tekst zaznacza się w maskedTextBox-ie. ;-)

        private void maskedTextBox_Enter(object sender, EventArgs e)
        {
            this.maskedTextBox.SelectAll();
        }
0
zosia_samosia napisał(a)

Niestety maskedtextbox nie ma takiego zdarzenia jak gotfocus
Niestety mylisz się.

0

U mnie ten kod nie działa. Może coś we właściwościach mam żle ustawione? A na mojej liście zdarzeń dla tej kontrolki nie ma gotfocus.

0

Sprawdziłam jeszcze raz. Ten kod działa jak potrzeba ale tylko gdy ta kontrolka nie ma ustawionej maski. Gdy maska jest ustawiona to kicha. Co robić ?

0

Należy użyć delegata i metody BeginInvoke:

        private void maskedTextBox_Enter(object sender, EventArgs e)
        {
            this.BeginInvoke((MethodInvoker)delegate() 
            { 
                maskedTextBox.SelectAll(); 
            });
        }
0

Dzieki wielkie. Działa!

1 użytkowników online, w tym zalogowanych: 0, gości: 1