View Single Post
  #3  
Old 06-09-2011, 20:26
ncom ncom vẫn chưa có mặt trong diễn đàn
Mới Đăng Ký
 
Tham gia ngày: Jul 2011
Bài gởi: 8
Thanks: 0
Thanked 8 Times in 3 Posts
Phía trên là giải thích sơ lược về việc subclass, tạo component mới trong Flex.

Còn để thỏa mãn yêu cầu thứ hai, khi chọn dữ liệu khác trên ComboBox sẽ tác động ngược lại DataGrid, thử cách này:

1. Giả sử đặt lại tên cho ComboBox trong ví dụ trên là cb1, DataGrid là dg1

2. Đã có binding một chiều khi tạo ComboBox, bây giờ thêm thẻ binding ngược này vào, đặt ngay trên dòng </Application> cho dễ nhìn:

<mx:Binding source="cb1.selectedValue" destination="dg1.selectedItem.State" />

3. Viết hàm changeHandler cho cb1 làm 2 việc:

- Gán giá trị mới chọn vào cho biến selectedValue của ComboBox, nó sẽ gọi cái binding phía trên để thay đổi giá trị dg1.selectedItem.State hiện tại. Lưu ý: Sửa cái component, thêm cái [Bindable] vào ngay trên setter selectedValue để binding có tác dụng.

cb1.selectedValue = cb1.selectedItem.data;

- Để refresh lại dg1 và hiển thị sự thay đổi, gọi dg1.dataProvider.itemUpdated(dg1.selectedItem)

thay đổi nội dung bởi: ncom, 07-09-2011 lúc 17:44
Trả Lời Với Trích Dẫn