2016-04-23 97 views
2

我是c#的新手,并且在Delphi中编写了多年。我被困在以下问题上,希望有人能帮助我。将Delphi枚举类型转换为C#中的类似事物#

在Delphi中,你可以声明一个类型:

type 
    TBtn = (btYes, btNo, btOK); 

然后创建一个过程

procedure TfrmMain.Button(ABtn: TBtn); 
begin 
    //Do something; 
end; 

,并呼吁像这样

Button(btYes); 

Button(btNo); 
程序

我想做同样的事情在C#

public Button (ABtn TBtn, string AString){ 
//Do Someting; 
} 

,并调用它

Button(btYes,"Hallo World"); 

我怎样才能做到这一点?

+0

我想你是在谈论C#'enum' – DavidG

+0

让它变成'TBtn aBtn',而不是相反。 –

回答

8

在德尔福这是一个enumerated type。 C#等价物是enum

声明的类型是这样的:

enum Btn {Yes, No, OK}; 

声明这样的功能:

public void Button(Btn btn, string str) 
{ 
    // Do Something; 
} 

,并调用函数如下所示:

Button(Btn.Yes, "Hallo World"); 

当你还在学习C# ,我会建议你保持介绍性文字。

+0

非常感谢。有用 –