Flex - 在 TabNavigator 中的选项卡更改时清除 DateField 值

Flex - Clearing DateField value on tab change in TabNavigator

我有以下选项卡导航器,它有一个 Project 选项卡,在 Release[ 旁边包含一个 Combobox =45=]标签如下(AdditionalDetails.mxml):

同一个选项卡导航器有一个 Gate2 选项卡,其中包含标签 CERT 加载日期旁边的 DateField ,见下图(Gate2.mxml):

现在,当我 select 发布 作为 TBDProject 选项卡上,将出现如下警告框:

单击 YES 后,我想清除 Gate2 选项卡上的 DateField。我该怎么做? 组合框代码(AdditionalDetails.mxml):

<mx:ComboBox id="General_Release_Dates"
                     selectedItem="{modelProxy.General_Release_Dates}"
                     valueCommit="{model.General_Release_Dates = event.currentTarget.selectedItem;updateReleaseDate(event)}"
                     change="{model.General_Release_Dates = event.currentTarget.selectedItem;updateReleaseDate(event)}" close="closeHandler(event);" includeInLayout="true" visible="true">
        </mx:ComboBox

用于处理“是”的代码,单击“警告”框:

private function alertClickHandler(evt:CloseEvent):void {
if (evt.detail == Alert.YES) { //Code to clear DateField}

DateField Gate2 选项卡上的代码(Gate2.mxml): 日期字段代码:<mx:DateField id="G2_CRTLoadDate" width="150" selectedDate="{modelProxy.G2_CRTLoadDate}" change="{modelProxy.G2_CRTLoadDate = event.currentTarget.selectedDate;changeManagerStatus()}"/>

更新时间:8 月 31 日 23:27(日本标准时间)

如果您使用单例

1) 在您的 MySingleton class 中创建变量,如下所示。

    private var _gate2:Object;

    public function set gate2(value:Object):void
    {
        _gate2 = value;
    } 

    public function get gate2():Object
    {
        return _gate2; 
    }

2) Gate2.mxml(在 creationComplete 事件中写入)

singleton.gate2 = this;

3) 从外部控制 Gate2 class.

private function alertClickHandler(evt:CloseEvent):void {
    if (evt.detail == Alert.YES) {
        //Code to clear DateField

        singleton.gate2.G2_CRTLoadDate.selectedDate = null;
    }
}