My Combobox is not alway updating when I update the ArrayCollection.[code]...
the first time it updates the combobox fine and sometimes it works the 2nd, 3rd, etc time is might update the combo box. After it stops updating the combobox, it never does until I restart the app. I have verified that the ArrayCollection is updated via the debug data, it is just the combobox is not updating the display.
My first issue is that when my ArrayCollection only has one item, for some reason I cannot select that first item. The change function set on the mxml never gets called when I try to select that one item. If I set a prompt, it works. I know that the item is not already selected because when debugging, the selected item shows null. I do not want to use a prompt. I want the first item in the ArrayCollection to be selected automatically. So if there is only one item, I want the selected item to be that. FYI - I am using a labelFunction to format the data in the Array Collection. why I cannot select the first item or set the first item in the ArrayCollection to be the selected item?
My bigger issue is that when my Array Collection gets updated, my label function must not be refreshing because when I first open the dropdown, it has specfic data. When the Array Collection gets updated and I open the dropdown again, I see the old data in the dropdown, yet it doesn't exist anymore.
So let's say I have a ComboBox that has a datasource of an array collection of one state code and it's state name. Their is a labelFunction that puts a dash in between the state code and the state name. Their is no prompt, so the ComboBox would look like GA - Georgia and when you open the dropdown, that would be all that is there. I want that item to be selected automatically. why the old data shows up when opening the dropdown after the array collection was updated with new data?
<mx:ComboBox labelFunction="getFormattedNpaNxxCollectionList()" dataProvider="arrayColl" change="doSomething()"/> public function getFormattedNpaNxxCollectionList(item:Object):String { return StringUtil.substitute("{0} - {1}", item.stateCode, item.stateName); }
In my case, some user interaction produces new values for the bindable variables "someDataProvider", and "someSelectedItem". However, when flex renders the DropDownList, the control's selected value is empty.
The reason for this is that the DropDownList's "selectedItem" property gets bound before the "dataProvider" property. The "dataProvider" needs to be bound first for "selectedItem" to be valid, this is because the new "selectedItem" points into the new "dataProvider".
what is the best practice for updating bindable properties in a specific order? I've come up with a few ways (e.g. using a valueCommit handler), but I wanted to see what the community had to say.
I had a comboBox and loading the datadynamically from the server. i need to display the first value in comboBox as a selected value and based on the value data should be populated on the grid.
But the ComboBoxes are being created dynamically with AS3, everything is working except I cant bind the second ComboBox dataProvider to be the XMLList in the first ComboBox's selectedItem.
I have a singleton class that looks something roughly like this (only with more bindable public properties):
public class Session extends EventDispatcher { private var _Id:String; private static const _instance:Session = new Session( SingletonLock ); private static const SESSID_CHANGED:String = 'SessionIdChanged';
[Code]...
The abnormal behavior I'm discovering is that the event listeners registered through registerOnSessionChange are indeed being called when the session Id changes, but the MXML data binding expression is not updating. I've tried all combinations of dispatching the event during the capture phase, and making it not cancelable, but to no avail. My understanding of [Bindable (event= ...)] is that the MXML should update the url string when the event specified is dispatched, so what am I doing wrong or misunderstanding?
Note: I realize there are lots of different ways of doing the singleton pattern in Actionscript, but unless the way I am doing it is actually causing my problem somehow,
In Flex 3, I've created a ComboBox within an MXML component similar to the following:
<mx:ComboBox id="comboBox" dataProvider="{_choices}" /> <mx:Script> <![CDATA[ import mx.collections.ArrayCollection; // etc... public function get choices():ArrayCollection { return _choices; } [Code] .....
In the parent MXML application, I'm modifying the contents of the choices property: myComponentId.choices.removeAll(); myComponentId.choices.addItem({data: "NY", label: "New York"}); myComponentId.choices.addItem({data: "CA", label: "California"}); // etc...
The binding is working in that the ComboBox is automatically picking up the new contents added at runtime, however it is not adjusting its width. The initial width of the ComboBox is wide enough only to show the initial item "All" declared in the component. However, I want and would have expected the ComboBox to re-size automatically during binding to be able to show "California", but it isn't. How can I get the ComboBox to update its width after I have added new wider labels to its dataProvider?
Here am getting array of groups(groupName,GroupID each row ) from a RemoteObject and displaying in a ComboBox. I am selecting the groups with selectedIndex as 0,1,2,3, but I want my groupIDs of correspoding groupnames,which am bringing to client side.
How can I get actual the groupId of the selected group?
I am developing a panel in Photoshop with Flex and Extendscript. I am pretty close to getting this to work, but with my Flex skills I am having a little issue with the Array I am pulling in from the jsx file. The array is displayed fine in the alert box, but somewhere between my split and creating new collection something is wrong.
Here is my Flex
protected function loadData():void { var grabFolderNames:SyncRequestResult = CSXSInterface.instance.evalScript("labNames"); var list:String = grabFolderNames.data;
class Foo { [Bindable] public var property: String; }
The class Foo has an implicit event dispatcher to handle property change events. How can I access that without making Foo explicitly extend EventDispatcher?
In my flex app I have a public bindable property.I want it so that every time the value of that property changes, a function gets triggered. I tried using ChangeWatchers, but it seems those only apply to built-in components like a text box change.i would like to do that same behavior with a property that changes at runtime.
I have a class like this. Property "isPag" is based on filed "ecboardid", I found that when ecboardid is changed, UI controls seem not be able to detect that "isPag" is also changed. So, how to make a property like this bindable?[code]...
I have Class1 with a read-only bindable property called age:
public class Class1 { private var _age:int; [Bindable(event="ageChanged"]
[Code]....
Of course the [Bindable] tag there doesn't make sense. But how can I achieve the same effect?
I believe I can dispatch some sort of ageChanged event from Class2 up to Class1 and then have an event handler in Class1 dispatch another local ageChanged event to which I bind Class2's age property.
I have a Number variable, named isConflict, whose value is passed in from a parent. I would like to put a ChangeWatcher on this item so that a function named changeBGColor will run whenever the value is changed. Within my creationComplete function of init, i have the following:
var isConflictWatch:ChangeWatcher = BindingUtils.bindSetter(changeBGColor, this, "isConflictChain");
I am just just curious as to whether the [Bindable] metadata tag in ActionScript 3 can only be used within the Flex framework, or can it be used in "regular" ActionScript projects where Flex isn't used?
ActionScript allows you to mark a variable as [Bindable], causing any changes to that variable to have immediate effect all over your application.How would you implement this feature in your favourite programming language?
Where presenter variable is defined here in MXML and a Presenter class has boxBusy and boxErrorMessage variables defined as bindable property change events:
[Bindable(event="propertyChange")] function get boxBusy():Boolean; function set boxBusy(value:Boolean):void;
[Code]....
PROBLEM is that whenever I change boxErrorMessage for the presenter, I see the affect in MXML but nothing happens at all when I change boxBusy. Is there something extra I need to do with boolean variable?
I have inherited an Adobe AIR application, and am attempting to debug it through Flash Builder 4.5. Within Flash Builder, when I look at one of the MXML files, I see warnings for each use of the [Bindable] tag:[code]And there are no missing semi-colons on the lines preceding each warning as per the suggestion in this blog post.The project is configured to use Flex SDK 3.6.Additionally the file will not load in the designer, with this warning:Design mode: Error during component layout. Choose Design > Refresh to refresh design mode.At runtime I am seeing a blank window - which I assume is the result of the bindings not being triggered. Is this tag not available in Flex SDK 3.6?
I'm trying to set a specific list item in a mx combobox to have a custom item renderer, the problem is that I cannot do this via mxml, it needs to be done via actionscript at a later stage, eg: combobox gets created, combobox gets populated, user does other tasks, combobox needs to set one or more items in the combobox to have icons (via item renderer)..
I can do this via the onChange event, but it only applies the icon when the combobox is opened and there is a slight delay so you can see the icon being added.
if I'm loading external data I'd just use an XML file and load it once. In this situation, the external data will be updated very periodically, and I'd like for the Flash app to grab the most recent data either on the update of the external data, or if that's not possible, every second or so.
I have an interface with two textfields and a combobox or a list. I want a user to be able to select a subject in the combobox and to input information in the two text fields. Once the user hits the send button, I want the input information appended to an existing XML file. Depending on the selction in the dropdown menu it should be appended to a specific node in the XML.
Creating a non-interactive status display: I want to have theflash display reflect data in a server-based XML-file. So far thisis easy. But I want the display to change everytime the XML filechanges-- in order to reflect status changes. I've used anXMLConnector and specified it and the trigger in the first frame.The Flash code catches and shows the XML values initially . Butwhen I edit the XML file, the new values are never picked up byFlash- its almost as though the values are cached. How do I getFlash to regularly be updated from a changing XML file? I've alsotried putting the trigger in a loop- but that doesn't workeither.
Debugging the application I find that selectedIndex in the presentation model always remains at the default value assigned regardless of which item I selected from the DropDownList. For the sample code above this is -1.How can I bind the selectedIndex in the presentation model such that it is updated appropriately when the selected item DropDownList changes?
I have a class called which is called ChartInfo,and it has a getter and setter methods as:
[Code]....
It will always give error like: 1195: Attempted access of inaccessible method isShowingPower through a reference with static type components.charting:ChartInfo.