Показать сообщение отдельно
Старый 14.12.2011, 16:53
Лир вне форума Посмотреть профиль Отправить личное сообщение для Лир Найти все сообщения от Лир
  № 1  
Ответить с цитированием
Лир
 
Аватар для Лир

Регистрация: Dec 2009
Адрес: Беларусь г.Минск
Сообщений: 90
Отправить сообщение для Лир с помощью Skype™
По умолчанию ToolTip для Spark DataGrid

Пытаюсь сделать, что бы при наведении на строку, в DataGrid отображался тултип. С mx: DataGrid все нормально работает, со Spark-ом возникли проблемы.
В примере два DataGrid один mx второй Spark, в mx для тултипа приходят корректные данные, а для Spark : "<dataTip>". Не могу понять что со Spark происходит, подскажите плз как быть:
Код AS3:
<fx:Script>
	<![CDATA[
		import mx.collections.ArrayCollection;
		private function initializeHandler(event:FlexEvent):void {
			doInit();
		}
 
		[Bindable]
		private var myData:ArrayCollection = new ArrayCollection();
		private function doInit():void{
			myData.addItem({fname:"Joe",lname:"Bloggs"});
			myData.addItem({fname:"Joe1",lname:"Bloggs"});
		}
 
		private function buildToolTip(item:Object):String{
			var myString:String = "";
			if(item != null)
			{
				myString = myString + "Firstname : " + item.fname + "\n";
				myString = myString + "Lastname : " + item.lname + "\n"
			}
			return myString;
		}
	]]>
</fx:Script>
 
<mx:DataGrid id="dGrid"  dataProvider="{myData}"  visible="true" dataTipFunction="buildToolTip">
	<mx:columns>
		<mx:DataGridColumn dataField="fname" headerText="FirstName" showDataTips="true" />
		<mx:DataGridColumn dataField="lname" headerText="LastName" showDataTips="true" />
	</mx:columns>
</mx:DataGrid>
<s:DataGrid dataProvider="{myData}"
	 dataTipFunction="buildToolTip">
	<s:columns>
	     <s:ArrayList>
		<s:GridColumn dataField="fname" headerText="FirstName" showDataTips="true" />
		<s:GridColumn dataField="lname" headerText="LastName" showDataTips="true" />
	     </s:ArrayList>
	</s:columns>
</s:DataGrid>
Добавлено через 3 часа 7 минут
Все проблема решена, для Spark dataTipFunction необходим еще параметр column:
Код AS3:
private function buildToolTip(item:Object, column:GridColumn):String{
	var myString:String = "";
	if(item != null)
	{
		myString = myString + "Firstname : " + item.fname + "\n";
		myString = myString + "Lastname : " + item.lname + "\n"
	}
	return myString;
}


Последний раз редактировалось Лир; 15.12.2011 в 02:05.