0

次の設定のレポートがあります。問題は、OrderDate をリンクに取り込む必要があることですが、HtmlItemCreated を使用すると、CreditCard ラベルの後に OrderDate が作成されるため、OrderDate ラベルのテキストを取得できません。または、どうすればこれを行うことができますか?、私は HtmlItemCreated にいるときに e.Brick.Text を取得できることを知っていますが、最初に作成されてから値を持つ他のものが作成されるため、そこではできません。これが最初に作成されます

private void xrLabel200_HtmlItemCreated(object sender, HtmlEventArgs e)

そして、これ

 private void OrderDate_HtmlItemCreated(object sender, HtmlEventArgs e)

私の問題は、OrderDate_HtmlItemCreated で作成された OrderDate が必要ですが、xrlabel200 の evernt ハンドラーを通過した後に生成されることです。

どうすればいいのかわからない ハンドラーの位置などを変更しようとしました..何もありません..誰かが私を助けてくれるなら、ここにレポートのスナップショットがあります

OrderDate はヘッダーにあり、CardType はリンクであり、そこに日付を追加しようとしています..次のように

 private void xrLabel200_HtmlItemCreated(object sender, HtmlEventArgs e)
{
 string cardTypeName = e.Brick.Text;

        switch (cardTypeName)
        {
            case "N/A":
                CardTypeID = 0;
                break;
            case "MASTER CARD":
                CardTypeID = 1;
                break;
        }
//OrderDate.Text is always returning XRLabel3 (which is the name) because it has not been populated
link.HRef = string.Format("mywebsite.aspx?sDate={0}&ctId={2}", OrderDate.Text, CardTypeID);
        link.InnerText = e.Brick.Text;
        link.Target = "blank";
        currentCell.Controls.Clear();
        currentCell.Controls.Add(link);
        currentCell.Attributes.Remove("onmousedown");
}
4

1 に答える 1

1

表示されたレポートの内容ではなく、基になるデータソースの内容に基づいてコードを作成することはできませんか?

これを行うと、特定の順序でコードを処理する必要がなくなります。

例:GetCurrentColumnValue

于 2012-05-04T07:15:29.393 に答える