gpt4 book ai didi

wpf - VB.net:如果文本框WPF中没有文本,则停止发送删除和退格键击

转载 作者:行者123 更新时间:2023-12-03 14:59:23 25 4
gpt4 key购买 nike

我的计算器在这里有个大问题。

我有一个动态刷新文本框,因此在textbox_change上,它将自动单击enter按钮。

Private Sub textBox_TextChanged(sender As Object, e As TextChangedEventArgs) Handles textBox.TextChanged
If IsNumeric(textBox.Text) = False Then
button.IsEnabled = False
Else
button.IsEnabled = True
End If
button_Click(sender, e)



End Sub

因此,由于我的按钮将在发送整数以外的任何其他击键上中断,因此,每当用户发送退格键或在文本框中没有其他字符的情况下删除键时,程序将崩溃。

当文本框中没有整数时,我的按钮代码将崩溃,而不是整数,也将崩溃在 button_click textbox.clear()和击键(退格键,删除键)上,因为我认为它检测到的击键是其他字符串而不是UInt64。
    If IsNumeric(textBox.Text) Then
b = CDbl(textBox.Text)
Else
Await Me.ShowMessageAsync("Error", "Please input a number.", MessageDialogStyle.Affirmative)
End If

Dim Input As ULong
Input = Convert.ToUInt64(textBox.Text)
textBox12.Text = (FormatNumber(Input))

Dim m As Decimal
Dim t As Decimal
Dim add As Integer

If b > 100000000 Then
t = 0.06
ElseIf b > 25000000 Then
t = 0.05
ElseIf b > 10000000 Then
t = 0.04
ElseIf b > 5000000 Then
t = 0.03
ElseIf b > 1000000 Then
t = 0.018
ElseIf b > 100000 Then
t = 0.008
End If



m = b - (b * t)
add = b - m
textBox1.Text = add
textBox2.Text = Int(m)

那么如何预防呢?到目前为止,如果没有非常谨慎的话,任何文本都无法清除。它将崩溃,并在mscorlib.dll中发生类型为'System.FormatException'的未处理异常。
当textbox.text中没有字符时,可以停止删除和退格键吗?我该怎么做?请帮忙!

最佳答案

也许您可以进行验证?

Private Sub TextBox_Validating(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles TextBox.Validating
If Not IsNumeric(TextBox.Text) Then
e.Cancel = True
Else
Button_Click(sender, e)
End If
End Sub

关于wpf - VB.net:如果文本框WPF中没有文本,则停止发送删除和退格键击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31260953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com