【问题标题】:Error - Only Assignment, call, increment, decrement, await, and new object expressions can be used as a statement错误 - 只有赋值、调用、递增、递减、等待和新对象表达式可以用作语句
【发布时间】:2023-03-05 23:49:02
【问题描述】:

运行我在 Visual Studios 中创建的程序后显示以下错误。

错误1 只有赋值、调用、递增、递减、等待和new对象表达式可以作为语句F:\CS4\Form1.cs 103 21 CS4

下面是它所说的发生此错误的代码集...

 catch (FormatException err)
                {
                    MessageBox.Show("Pay Rate must be numeric. " + err.Message,
                        "Data Entry Error", MessageBoxButtons.OK);
                    MessageBoxIcon.Exclamation;
                    txtPayRate.SelectAll ();
                    txtPayRate.Focus ();

文本 MessageBoxIcon.Exclamation;是我点击错误消息时突出显示的地方

我不知道为什么它一直这么说。任何想法如何解决它?

【问题讨论】:

    标签: c#


    【解决方案1】:

    您的代码缺少右括号,我认为这是将其复制到 SO 而不是真正在您的应用程序中的错误。我认为如果您将 MessageBoxIcon.Exclamation 作为最终参数传递给 MessageBox.Show 而不是将其单独放在一行上,您的错误就会消失。

     catch (FormatException err)
     {
        MessageBox.Show("Pay Rate must be numeric. " + err.Message,
                        "Data Entry Error", MessageBoxButtons.OK,
                        MessageBoxIcon.Exclamation);
        txtPayRate.SelectAll();
        txtPayRate.Focus();
      }
    

    该错误本质上是说您有一行不是有效的 C#。它列出了您可以做的所有事情。 MessageBoxIcon.Exlamation; 因为它自己的线路什么也不做。您只是在访问某个值,但没有将其分配到任何地方或将其传递给任何方法或对其执行任何操作,这就是产生错误的原因。

    【讨论】:

    • 我刚刚尝试了你解释的方式,它现在只是给我简单的错误来纠正,然后一旦我这样做,它仍然给我同样的信息
    • @LindsayMartino 我刚刚删除的答案中有一个错字。我不知道这是否能解决你的问题。如果没有,您可能会在其他地方出现另一个错误,因为该代码有效。
    • 是的,我刚刚修复了它,它成功了 :) 非常感谢您的帮助
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-05
    • 2014-01-04
    • 2016-06-27
    • 1970-01-01
    • 2020-11-24
    • 1970-01-01
    相关资源
    最近更新 更多