わかりました。現在のデータオブジェクトを取得する方法はまだわかりませんが、レポートのFields
プロパティを使用して現在のデータオブジェクトから値を取得できることを発見しました。
以下のコードは、詳細セクションのFormat
イベントをサブスクライブします。Fields["Condition"].Value
現在のデータオブジェクトのCondition
プロパティの値(たまたま列挙値)を取得します。
private void detail_Format(object sender, EventArgs e)
{
Condition? condition = Fields["Condition"].Value as Condition?;
conditionUnknownPicture.Visible = (condition == Condition.Unknown);
conditionPoorPicture.Visible = (condition == Condition.Poor);
conditionNormalPicture.Visible = (condition == Condition.Normal);
conditionNewPicture.Visible = (condition == Condition.New);
}
編集:
それ以来、FormatイベントからFieldsコレクションにアクセスすることは、特定の奇妙なコーナーケースでは機能しないため、ActiveReportsのデザインルールに反することを学びました。現在、代わりにこのメソッドを使用しています:http ://www.datadynamics.com/forums/ShowPost.aspx?PostID=133642#133642
DataDynamicsには、Formatイベントからのデータオブジェクトへのアクセスを提供する機能要求22786があります。