about Flex DataGrid edit
Summary(¸ÅÊö)£º Adobe Flex µÄ dataGrid ÓкÜÇ¿´óµÄ¹¦ÄÜ£¬±ÈÈçItemRenderer,headerRendererµÈ£¬¿ÉÒÔ·½±ãµØÊµÏÖ×Ô¼ºÏëÒªµÄ¹¦ÄÜ¡£µ«¶ÔdataGridÖ±½Ó±à¼²¢±£´æµ½Service¶Ë£¬¾ÍÓеãÂé·³ÁË¡£
Requirement(ÐèÇó)£º ¶ÔdataGrid½øÐе¥Î»¸ñ±à¼£¬ÈôÓб仯£¬±£´æµ½Service; ·ñÔò²»±£´æ¡£
Solution(½â¾ö·½°¸): ÔËÓÃDataGrid µÄ itemEditBegin ʼþ¡¢itemFocusOut ʼþ¡£
1. when the itemEditBegin is dispatched, the event handler should save this cell value as old value.(±à¼Ç°±£´æ¾ÉÖµ)
2. when the listener of itemFocusOut is responding, you should check the current cell to the old value. If it's value have changed, you should save the new value to Service.(±à¼ºóÅжϣ¬ÊÇ·ñ¸ü¸Ä¡£)
Example(Àý×Ó) as follow:
<mx:Script>
<![CDATA[
private var oldValueOfEditedItem: CreditVO;
private function creditDGEditBegin(event: DataGridEvent): void {
oldValueOfEditedItem = (event.itemRenderer.data as CreditVO).clone() as CreditVO;
}
private function editedItemChanged(newValue: CreditVO): Boolean {
return (newValue.amount != oldValueOfEditedItem.amount)||
(newValue.description != oldValueOfEditedItem.description);
}
private function creditDGEditEnd(event: DataGridEvent): void {
var newValue: CreditVO = event.itemRenderer.data as CreditVO;
if (editedItemChanged(newValue)) {
dispatchEvent(new UpdateCreditEvent(newValue))
}
}
]]>
&
Ïà¹ØÎĵµ£º
ÔÚ±¾ÏµÁÐÇ°Ãæ¼¸ÆªÎÄÕÂÖзֱð½éÉÜÁËͨ¹ýWebService¡¢HTTPService¡¢URLLoaderÒÔ¼°FielReferenceµÈ×é¼þ
»òÀàÀ´Íê³ÉFlexÓë.NET·þÎñ¶ËµÄͨÐŵÄÏà¹ØÖªÊ¶µã¡£Í¨¹ýÕâЩ·½Ê½À´Íê³ÉÓë·þÎñ¶ËµÄͨÐÅÊǷdz£·½±ãºÍ¼òµ¥µÄ£¬µ«ÓÐËûµÄȱµã¾ÍÊÇͨÐÅÊý¾ÝÁ¿½ÏС£¬ÈçÒª´«
Êä´óÁ¿µÄÊý¾Ý»òÊÇʵÏÖ²»Í¬¶ÔÏóµÄÐòÁл¯´«Ê䣬ËüÃÇÔòÂú×ã²»ÁËÎÒÃǵ ......
Ô´ÌùµØÖ· http://www.riachina.com/showtopic.aspx?topicid=8556#
ÓÉÓÚLocalconncetionµÄijЩÏÞÖÆ(һ̨¿Í»§Ö»¿ÉÒÔʹÓÃÌØ¶¨Ãû×ÖµÄÒ»¸öÁ¬½Ó£¬ÕâÑùµÄ³ÌÐòÈç¹û¿ªÁ½¸ö´°¿Ú¾Í»á·¢ÉúÒì³£)£¬½ñÌìÏÐ×ÅûÊÂ×öÁËÒ»¸öÕâÑùµÄÊÔÑé¡£ÈÃFlash CS3ºÍFlexµÄ´úÂë¿ÉÒÔÏ໥µ÷Óã¬ÎªÁËÏÔʾЧ¹û£¬ÔÚË«·½µÄ½çÃæ·Ö±ð·ÅÖÃÁËÒ»¸öÎı¾ÊäÈë¿òºÍÒ»¸ö°´Å¥¡ ......
ÉÏ´ÎÌýÅóÓÑÌáÆðÏÖÔÚÔÙÓÃFlex×öÏîÄ¿£¬ÏÐϾ֮ÓàÔÚ×Ô¼ºµÄµçÄÔÉÏÅäÖÃÁËFlex + myeclipseµÄ¿ª·¢»·¾³¡£ËäÈ»¿ª·¢»·¾³´î½¨»¨Á˲»ÉÙµÄʱ¼ä£¬Ò²Óöµ½Á˲»ÉÙÎÊÌâ¡£ÔÙ½â¾öÕâЩÎÊÌâµÄʱºò£¬Ò²ÕÒÁ˲»ÉÙµÄ×ÊÁÏ£¬Ñ§µ½Á˲»ÉÙ¶«Î÷¡£ºÇºÇ
¼ÌÐøÑо¿Ñ§Ï°................... ......
ÏÈÓÃÏֳɵÄ×é¼þÍæÒ»Ï£¬Ò»»áÔÙÈ¥¿´¿´×é¼þÔ´ÂëÑо¿Ò»Ï¡£
http://code.google.com/p/flex-iframe/
ÏÂÔØÁËflexiframe.swc£¬ÒýÈ빤³Ì¡£
flex´úÂë
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"
......
¹ØÓÚFlex»òFlashµÄ¿çÓò·ÃÎʵĽâ¾ö·½°¸£¬ÊÂÇéµÄÆðÒòÊÇ£¬ÓÉÎÒ¹«¿ªµÄÒ»¸öwebservice£¨²»Çå³þÕâ¸öwebservice¸ÉʲôµÄÇë¿´ÕâÀ¿ªÊ¼µÄ£¬kenshinµÄÅóÓÑsensunÔÚÕâ¸ö¹«¿ªµÄwebserviceµÄ»ù´¡ÉÏÖÆ×÷ÁËÒ»¸öweather²éѯµÄ£¬ÔÚ±¾»ú²âÊÔok£¬Ò»Äõ½ÍøÉÏ£¬¾Í»á³öÏÖerror£¨ÊÇ¿çÓò·ÃÎʵĴíÎ󣩣¬ºóÀ´£¬kenshinÖÕÓÚÕÒµ½ÁËÕâ¸öÎÊÌâµÄ½â¾ö·½° ......