如何在c#中声明类型

本文关键字:声明 类型 | 更新日期: 2023-09-27 18:13:32

我不确定什么是我正在寻找的正确名称!

我想做的是做一个方法来更新状态栏文本,并将其颜色为红色,如果它是一个错误消息或绿色,如果它是一个成功消息:

public void UpdateStatus(string message, MessageType type)
{
      if(type == MessageType.Error)
      {
           statusText.Text = message;
           statusText.ForeColor = Color.Red;
      }
      if(type == MessageType.Success)
      {
           statusText.Text = message;
           statusText.ForeColor = Color.Green;
      }
}

MessageType

public class MessageType
{
    class Error
    {
       //What to do here?
    }
    class Success
    {
        //What to do here?
    }
}

那么我如何定义这个MessageType类,它是如何被调用的?接口?枚举?什么? ?

谢谢。

p。S:我知道我可以用Color作为我写的UpdateStatus方法的第二个参数,但是我想学习如何使它像我说的那样。

如何在c#中声明类型

您正在尝试创建enum类型:

public enum MessageType {
    Success,
    Error
}

我想你只需要一个enum:

public enum MessageType { Error, Success }

然后你的if(type == MessageType.Error)就工作了

在这种情况下,您正在寻找enum:

public enum MessageStatus
{
  Failure,
  Success
}

您可能需要一个enum:

public enum MessageType
{
    Error,
    Success
}

那么在使用枚举的代码中,你可以这样做:

if (msg == MessageType.Error)
    // show error info
else
    // show success info
public enum MessageType {Error, Success};

我认为你想要一个enum应该像

public enum MessageType { Error, Success };

查看http://msdn.microsoft.com/en-us/library/sbbt4032(v=vs.71).aspx获取更多信息

如果决定使用enum,则使用:

public enum MessageType
{
    Failure,
    Success
}

…然后你可以使用一个开关来处理它,像这样:

public void UpdateStatus(string message, MessageType type)
{
   statusText.Text = message;
   switch (type)
   {
       case MessageType.Error:
           statusText.ForeColor = Color.Red;
           break;
      case MessageType.Success:
           statusText.ForeColor = Color.Green;
           break;
   }
}