У меня есть веб-страница aspx, на которой успешно размещается гибкое приложение. На странице есть несколько переменных, которые генерируются во время загрузки. Мне было интересно, есть ли способ взять эти переменные и использовать их в приложении flex.
Я пробовал пару вещей, но последняя выглядит так:
<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' width='100%' height='100%' id='FlexApp'title='FlexApp'>
<param name='movie' value='FlexApp.swf' />
<param name='quality' value='high' />
<param name='wmode' value='opaque' />
<param name='AllowScriptAccess' value='always' />
<param name='swfversion' value='9.0.45.0' />
<embed src=FlexApp.swf' AllowScriptAccess='always' pluginspage='http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash' type='application/x-shockwave-flash' width='100%' height='100%'
flashVars='param1='+<%=param1%>'¶m2='+<%=param2%>
</object>
Где param1
и param2
- это глобальные переменные в файле page.aspx.cs
, например:
public string param1,param2;
protected void Page_Load(object sender, EventArgs e)
{
param1 ="Something"
param2 = "Else"
}
В гибком приложении для тестирования у меня есть
import mx.core.FlexGlobals;
private void Init()
{
Alert.show(FlexGlobals.topLevelApplication.parameters.param1);
}
Когда я загружаю флэш-приложение, я получаю диалоговое окно с предупреждением с кнопкой «ОК» с текстом «void». Очевидно, что это не чтение переменных ... Есть ли какое-либо решение для этого?
Причина, по которой мне это нужно, в том, что есть функция, к которой flex не может получить доступ, но веб-страница, на которой она размещена, может, поэтому я хотел опубликовать результат в приложении Flex.