0

カスタム レンダラー (から継承)があり、プロパティの値をAdvancedDataGridItemRendererオーバーライドして使用していますが、毎回古い値を取得しています! プロパティがコミットされた後に実行することは想定されていません(私はスーパーを呼び出しています)? これが私のコードです:validatePropertieswidthvalidateProperties

public override function validateProperties():void
{
    super.validateProperties();
    if ((AdvancedDataGrid(listData.owner).columns[listData.columnIndex].
            showDataTips)&&(textWidth>width))
        toolTip=listData.label;
    else toolTip=null;
}

ありがとう!

4

3 に答える 3

0

アイテム レンダラーのデータ セッターでこれを行う必要があります。

public override function set data(val:Object):void{
    super.data=val;
    if ((AdvancedDataGrid(listData.owner).columns[listData.columnIndex].
                showDataTips)&&(textWidth>width))
            toolTip=listData.label;
        else toolTip=null;

    }
于 2012-12-03T21:21:53.323 に答える
0

幅セッターをオーバーライドするか、「textFieldWidthChange」イベントを処理することをお勧めします。

于 2012-12-04T13:50:14.993 に答える
0

私はそれを解決しました。トリックはvalidateSizewidthプロパティに使用することです。は、専用の関数 ( 、など)validatePropertiesがある他のグループのいずれにも属さないプロパティ用です。validateXvalidateSizevalidateList

于 2012-12-19T18:54:24.507 に答える