2009-05-04 26 views
0

对不起,如果标题不清楚 - 不知道如何对它进行描述。随意编辑它。C#生成的Actionscript代理枚举的使用

我有用C#编写的Web服务,它使用枚举。当我使用Flash来访问这个web服务时,我让Flex生成了代理类 - 它也在Actionscript中生成所述枚举。我的问题是,我不知道如何使用这个生成的Actionscript。

C#枚举:

public enum ImageType 
{ 
    None = 0, 
    Png = 1, 
    Jpg = 2, 
    Gif = 3 
} 

的Actionscript生成的代理类(不能改变这一点):

public class ImageType 
{ 
    public function ImageType() {} 
    [Inspectable(category="Generated values", eumeration="None,Png,Jpg,Gif", type="String")] 
    public var _ImageType:String;public function toString():String 
    { 
     return _ImageType.toString(); 
    } 
} 

的ActionScript使用示例(即这是应该如何在我的大脑工作):

var imgType:ImageType = ImageType.Png; //this does not actually work though 

注意:代码仅为示例,但结构相同。

我将如何去在Actionscript中使用此ImageType枚举?

回答

0

AS3不支持枚举。我并不是很确定这个生成的代理类是什么,但它不会提供大部分您习惯的枚举行为。

你必须做到以下几点:

var imgType:ImageType = new ImageType(); 
imgType._imageType = "Png"; 

我知道你说你不能改变生成的类,但如果你想创建自己的枚举类,检查链接到官方以下问题文档以及对自定义枚举实现一个有用的博客文章:

Enums in AS3/Flash/Flex?

+0

欢呼您输入的伴侣。我担心情况会如此。我会再花一天时间看看是否还有其他贡献 – 2009-05-04 20:19:17