First.mxml - Содержит DateField управления следующим образом:Flex - Проблемы доступа к статической переменной на другой странице MXML
<mx:DateField id="G2_CRTLoadDate" width="150" selectedDate="{modelProxy.G2_CRTLoadDate}" change="{modelProxy.G2_CRTLoadDate = event.currentTarget.selectedDate;changeManagerStatus()}"/>
Я назначая это значение DateField к статической переменной CERT_LOAD_DATE следующим образом (First.mxml):
[Bindable]
public static var CERT_LOAD_DATE:String = "";
private function changeManagerStatus():void
{
CERT_LOAD_DATE = G2_CRTLoadDate.selectedDate.toDateString();
}
Se cond.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>
Внутри функции closeHandler, я пытаюсь получить доступ к переменной CERT_LOAD_DATE следующим образом:
private function closeHandler(evt:DropdownEvent):void {
var CurrentDate:Date = new Date();
if(General_Release_Dates.selectedLabel.toString() == "TBD")
{
Alert.show(First.CERT_LOAD_DATE);
}
}
в поле предупреждения не отображается значение (null). Пожалуйста помоги.
Каков порядок создания для этих MXML? Вы пытались установить точку останова на 'CERT_LOAD_DATE = G2_CRTLoadDate.selectedDate.toDateString();' и проверить, какое значение назначается? Являются ли эти MXML добавленными при проверке? Когда вы пытаетесь получить к нему доступ в Second.mxml? Поместите несколько подробностей. –
Я попытался отобразить значение CERT_LOAD_DATE в окне предупреждения после назначения и отображает ожидаемое значение (First.mxml). –
@GurtejSingh Я отредактировал мой вопрос, чтобы включить более подробную информацию. Пожалуйста, посмотрите. В основном, порядок доступа - Second.mxml -> First.mxml. –