创建MXML实例

时间:2009-07-27 20:03:50

标签: flex

是否可以创建主MXML的实例并在ActionScript类中使用它。

public  var obj:classname= new classname();

当我尝试通过obj.textfieldID调用组件id时......它不会......

虽然obj是classname.mxml的一个实例。

1 个答案:

答案 0 :(得分:2)

我不确定,但控件实例可能会生成为受保护的。尝试添加包含对文本字段的访问权限的公共属性/方法。然后,您应该能够从MXML文件外部访问该公共成员。

但是,仅供参考,最好使用绑定来填充MXML组件。您可以使用BindingUtils。bindProperty通过代码添加绑定。尽管如此,你还是会在MXML文件上绑定一个属性(在< mx:Script>中或在'代码隐藏'中通过继承)然后让你的textField绑定到属性:

private var _displayText : String;

[Bindable] // only required on get
public function set displayText(value : String) : void
{
    return _displayText;
}


public function set displayText(value : String) : void
{
    _displayText = value;
}

然后你的领域将被宣布:

<mx:Label id="displayNameLabel" text="{displayName}" />

现在,每次更改(公共)displayName属性时,displayNameLabel.text都会自动更改。