0

日付、運送業者、顧客、追跡番号を表示する注文ステータス ASPX ページを作成しています。このページのデータは、ユーザーが日付または顧客の名前で検索できる検索フォームによって生成されます。当社の SQL データベースでは、追跡番号として、「759102160484401」(Random FedEx Tracking Number) などの数値のみが含まれています。検索が行われるたびに、これらを各運送会社の適切な追跡書類にハイパーリンクしたいと思いました. 現在の出力は次のとおりです。

2012 年 10 月 8 日 --- フェデックス --- ジェームズ フランコ --- 759102160484401

今問題。現在の DataNavigateUrlFormatString が FedEx URL に設定されています。Carrier の SQL フィールドに「UPS」と表示されていることを検出すると、これを UPS リンクに切り替えたいと考えています。どうすればこれを達成できますか? 以下は、Tracking.aspx ファイルの追跡番号列の現在の行です。

<asp:HyperLinkField DataTextField="TRACKNUM" DataNavigateUrlFields="TRACKNUM" HeaderText="Tracking#" Target="_blank" Text="Tracking#"
                    DataNavigateUrlFormatString="http://www.fedex.com/Tracking?clienttype=dotcom&ascend_header=1&cntry_code=us&language=english&mi=n&tracknumbers={0}"
                    HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" />

これが詳細であり、高く評価されることを願っています!

4

1 に答える 1

0

アウトライン形式では、

OnRowDataBound でイベントを登録します (他のデータバインディング コントロールと同じ概念) http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.onrowdatabound.aspx

行から HyperLinkField を抽出します。通常、イベントの .Row プロパティで FindControl を使用するか、場合によっては .Row[x] を使用します。x は、コントロールを保持するセルのインデックスです。

フェデックスまたはアップスの URL が必要かどうかを知らせる情報に応じて、DataNavigateUrlFormatString を 1 つの文字列または別の文字列に設定します。

于 2012-10-23T17:09:16.133 に答える