1
데이터 그리드에서 항목을 드래그하고 드래그하는 동안 선택한 레코드의 모든 열을 드래그하여 볼 수 있습니다. 그러나 단 하나의 열 (어쩌면 레코드의 이름이나 ID) 만 표시하고 싶습니까? 이것을 달성 할 수있는 방법이 있습니까? 또한 드래그하는 동안 레코드 대신 아이콘이나 이미지를 표시 할 수 있습니까?드래그 앤 드롭 아이콘 질문
감사합니다.
데이터 그리드에서 항목을 드래그하고 드래그하는 동안 선택한 레코드의 모든 열을 드래그하여 볼 수 있습니다. 그러나 단 하나의 열 (어쩌면 레코드의 이름이나 ID) 만 표시하고 싶습니까? 이것을 달성 할 수있는 방법이 있습니까? 또한 드래그하는 동안 레코드 대신 아이콘이나 이미지를 표시 할 수 있습니까?드래그 앤 드롭 아이콘 질문
감사합니다.
DataGridDragProxy
속성을 표시하도록 DataGrid를 확장하여이 작업을 수행 할 수 있습니다. working example에 대해서는 http://dgrigg.com/blog/2006/11/03/datagrid-drag-image/을 확인하십시오.
확장 된 데이터 그리드 :
<mx:DataGrid xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.controls.dataGridClasses.DataGridDragProxy;
import mx.core.IUIComponent;
/**
* @public
* class to use as DragProxy image
* set the default value to the standard DataGridDragProxy class
*/
[Bindable]
public var dragProxyImage: Class = DataGridDragProxy;
override protected function get dragImage():IUIComponent
{
var image:IUIComponent = new dragProxyImage();
image.owner = this;
return image;
}
]]>
</mx:Script>
</mx:DataGrid>
DataGrid에 사용 :
<controls:DataGrid
dataProvider="{dataSource}"
rowHeight="40"
dragEnabled="true"
height="140"
dragProxyImage="com.dgrigg.controls.CustomDragProxy"
allowMultipleSelection="true">
<controls:columns>
<mx:DataGridColumn headerText="Image" dataField="image">
<mx:itemRenderer>
<mx:Component>
<mx:Image source="{data.image}"/>
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
<mx:DataGridColumn headerText="Product" dataField="name"/>
<mx:DataGridColumn headerText="Description" dataField="description"/>
</controls:columns>
</controls:DataGrid>
했다 ...하지만 내가 드래그 된 항목을 배치하기 위해 많은 하드 코딩 변경했습니다 마우스 오른쪽 아래에 그러나 내 컴퓨터의 해상도가 변경되면 이는 또한 일관성이 없습니다. 그럼에도 불구하고, 나는 아이디어를 얻었고 어느 정도 문제를 해결하고있다. 감사. – Tintin
@ user503510, 걱정할 필요가 없습니다. 내 대답이 당신의 문제를 해결하는 데 도움이된다면, 받아 들인 대답과 upvote로 표시하는 것이 좋습니다. :) –