[ 
https://issues.apache.org/jira/browse/FLEX-35197?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Santanu Karar updated FLEX-35197:
---------------------------------
    Attachment:     (was: src.zip)

> [FlexJS] Data-binding is broken or not implemented in DataGrid component
> ------------------------------------------------------------------------
>
>                 Key: FLEX-35197
>                 URL: https://issues.apache.org/jira/browse/FLEX-35197
>             Project: Apache Flex
>          Issue Type: Question
>    Affects Versions: Apache FlexJS 0.8.0
>            Reporter: Santanu Karar
>         Attachments: src.zip
>
>
> (I've took the _DataGrid_ example that supplied within the nightly build of 
> 0.8.0 FlexJS SDK bundle, and I tried all my tests in that project only)
> h3.Requirement
> Binding is a strong feature in Flex technology. As an user I also do expect 
> that FlexJS will also empowers us with the same strength developing projects. 
> While testing _DataGrid_ example that supplies within SDK bundle, I noticed 
> that pay-as-you-go view only available but no actual run-time data binding 
> (as far I tested); which is the strength that I was talking about. Is 
> run-time data-binding (by any _beads_ or any other way) to DataGrid component 
> is at all available yet? 
> In the following tests I tried to update one row object's (_Product_) one 
> particular field (_image_) value, to see it's change in row renderer, at 
> run-time. 
> I also tried to add or delete an item to it's _dataProvider_ collection to 
> see their changes in DataGrid UI.
> h3.Actual Result
> Run-time data update to collection list not affecting to DataGrid UI.
> h3.How I Tested
> I've attached the source ZIP that supplied within SDK bundle and I modified 
> few codes to test my requirement. The places which I've changed as follows. 
> *Product.as*
> {code}
> // since I was trying to update one field at least to DataGrid UI, I added 
> get/set methods to the _image_ field
> private var _image:String;
> [Bindable(event="imageChanged")]
> public function get image():String
> {
>       return _image;
> }
>               
> public function set image(value:String):void
> {
>       if (value != _image)
>       {
>               _image = value;
>               dispatchEvent(new Event("imageChanged"));
>       }
> }
> {code}
> *MyInitialView.mxml*
> {code}
> // Upon a button click I tried to change collection data at run-time to make 
> effect in DataGrid UI
> private function onButtonClicked():void
> {
>       // 1. This part not working or updating to DataGrid UI
>       /*var tmp:Product = 
> ProductsModel(applicationModel).productList.getItemAt(1) as Product;
>       tmp.image = "Modified Text";*/
>                       
>       // 2. This part not working or updating to DataGrid UI either
>       /*ProductsModel(applicationModel).productList.source[1] = tmp;
>       ProductsModel(applicationModel).dispatchEvent(new 
> Event("propertyChange"));*/
>                       
>       // 3. Only this part worked when *SimpleBinding used instead of 
> ConstantBinding*
>       ProductsModel(applicationModel).productList = new ArrayList([new 
> Product("ps220","Weejets",35,190,"assets/smallorangerect.jpg")]);
> }
> ...
> // DataGrid ConstantBinding bead replaced with SimpleBinding
> <js:DataGrid id="dataGrid" x="20" y="30" width="400" height="300" 
> change="dataGridChange()" rowHeight="30">
>               <js:beads>
>                       <js:SimpleBinding sourceID="applicationModel"
>                                                         
> sourcePropertyName="productList" destinationPropertyName="dataProvider" 
> eventName="propertyChange"/>
> ...
> {code}
> I also created a new MXML based _DataItemRenderer_ component to see if 
> binding is working anyway: *ProductItemRendererMXML.mxml*; But it didn't 
> worked either. 
> I discussed this at dev mailing-list 
> (http://apache-flex-development.2333347.n4.nabble.com/Why-same-files-exists-in-multiple-places-td56983.html)
>  where Alex suggested that a chain of specific beads usage may help this 
> feature, but he wasn't sure if such beads already developed or not. 
> Is there any such beads or procedure already available, or, in-development? 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to