데이터 제공자의 값을 수정하지 않도록 렌더러를 그리드에 적용하는 방법이 있습니까? DataGrid가 있고 그 열 중 하나에서 set 데이터 함수를 재정의하고 dataprovider의 숫자 값을 단어로 변환하는 고객 렌더러가 있습니다. 내 문제는 그 열을 기준으로 표를 정렬 할 때 새로운 값으로 정렬하는 반면 원래는 dataprovider에 있던 이전 값으로 정렬하기를 원한다는 것입니다. dataProviders에서는 수정하지 않는,데이터 제공자를 변경하지 않는 렌더러
public class MyRenderer extends Text {
override public function set data(value:Object):void {
super.data = value;
data[DataGridListData(listData).dataField] = MyClass.convertValue(data[DataGridListData(listData).dataField]);
super.invalidateDisplayList();
}
}
labelFunction의 존재를 알지 못했지만, 렌더러보다 내가 성취해야 할 부분에 더 적합하다고 생각합니다. 렌더러 대신 렌더러를 사용해야했습니다. labelFunction을 사용하도록 코드의 일부를 변경했으며 초기 결과는 유망 해 보입니다. 감사. – supercooldude
플렉스 팀은 완벽하지는 않지만 꽤 똑똑합니다. Flex가 "해야"한다고 생각하면 뭔가를 찾으십시오. 대부분의 경우, 그것은 ... 당신은 단지 그것을 찾을 필요가 있습니다 :) –