C# winform 键按 delete 添加 0

Jiale Xue - MSFT 46,456 信誉分 Microsoft 供应商
2024-06-07T06:07:37.4766667+00:00

如果用户在文本框中输入数字并按 delete 或退格文本框,则进行一些数学运算将显示 (0) 零而不是空白。 任何帮助都表示赞赏。

 private void OnTextChanged(object sender, EventArgs e)
        {

            if (int.TryParse(txt_BackedOut.Text, out int i) && int.TryParse(txt_TOTAL.Text, out int j) && int.TryParse(txt_Online.Text, out int t))
                txt_Different.Text = (j - i - t).ToString();



            if (txt_Online.Text == "")
                MessageBox.Show("Please enter Zero or another number in the textbox");



        }

Note:此问题总结整理于: c# winform key press delete add 0

Windows 窗体
Windows 窗体
一组用于开发图形用户界面的 .NET Framework 托管库。
113 个问题
C#
C#
一种面向对象的类型安全的编程语言,它起源于 C 语言系列,包括对面向组件的编程的支持。
188 个问题
0 个注释 无注释
{count} 票

1 个答案

排序依据: 非常有帮助
  1. Hui Liu-MSFT 48,571 信誉分 Microsoft 供应商
    2024-06-07T09:49:10.9866667+00:00

    我同意 vb2ae 的解决方案,您可以尝试使用 textbox.keyup 事件来获取您想要的东西。

    我做了一个示例代码,你可以看看。

     private void Form1_Load(object sender, EventArgs e)  
            {  
                textBox1.Text = "0";  
            }  
            private void textBox1_KeyUp(object sender, KeyEventArgs e)  
            {  
                if (e.KeyCode == Keys.Back&&textBox1.Text=="")  
                {  
                    textBox1.Text = "0";  
                }  
                if(!int.TryParse(textBox1.Text, out int i))  
                {  
                    MessageBox.Show("Please enter number and don't contain other character");  
                    textBox1.Text=textBox1.Text.Remove(textBox1.Text.Length - 1,1);  
                }  
            }  
       
    

    结果:

    137189-1.gif


    如果回复有帮助,请点击“接受答案”并点赞。

    注意:如果您想接收此线程的相关电子邮件通知,请按照我们文档中的步骤启用电子邮件通知。

    0 个注释 无注释

你的答案

问题作者可以将答案标记为“接受的答案”,这有助于用户了解已解决作者问题的答案。