J'ai une application avec 4 contrôles de zone de texte: TotalTextBox
, PaidTextBox
, RemainingTextBox
et DriverTextBox
.Passer la zone de texte en cours
Comment passer I à la zone de texte actuelle mise au point par l'utilisateur (uniquement s'il n'est pas DriverTextBox
, à savoir que de TotalTextBox
, PaidTextBox
, RemainingTextBox
)? Au lancement du programme, il convient de se concentrer sur le contrôle TotalTextBox. J'ai également mis en place un try/catch de sorte qu'il ne reste plus qu'à se concentrer sur le contrôle TotalTextBox.
Ceci est mon code à ce jour:
MainWindow.Xaml.cs (où tb est la zone de texte au point que je veux passer à travers)
public MainWindow()
{
InitializeComponent();
TotalTextBox.Focus();
// Setup keypad
bool dotControl = false;
int count = 0;
}
private void RemoveLastButton_Click(object sender, RoutedEventArgs e)
{
try
{
var keypadObject = new Keypad();
keypadObject.RemoveLast(TextBox tb, bool dotControl, int count);
}
catch (Exception)
{
TotalTextBox.Focus();
}
}
Keypad.cs
public void RemoveLast(TextBox tb, bool dotControl, int count)
{
if (tb.Text.Length > 0)
{
if (char.IsDigit(tb.Text[tb.Text.Length - 1])) count = 0;
else
{
dotControl = false;
count = 0;
}
tb.Text = tb.Text.Remove(tb.Text.Length - 1, 1);
}
}