0

私はasp.netが初めてです。助けてください。私は2つのファイルを持っています。1 つの default.aspx、1 つの default.aspx.cs。

default.aspx には、次のものがあります。

<asp:GridView ID="DataGridView" runat="server" AutoGenerateColumns="false" RowStyle-BackColor="#A1DCF2" HeaderStyle-BackColor="#3366FF" HeaderStyle-ForeColor="White">
    <rowstyle backcolor="LightCyan" forecolor="Black" font-italic="true"/>

     <alternatingrowstyle backcolor="PaleTurquoise" forecolor="Black" font-italic="true"/>

    <Columns>
        <asp:BoundField ItemStyle-Width="15%" DataField="ID" HeaderText="ID" />

        <asp:hyperlinkfield text="Log" navigateurl="http://somelink&RecordId=" target="_blank" ItemStyle-Width="15%" HeaderText="Log" />

        <asp:BoundField ItemStyle-Width="15%" HeaderText="Delayed Delivery" />
    </Columns>
</asp:GridView>

私の質問:

コラム: ハイパーリンク ログ:

  1. 「Base_Id」というデータベースの列にバインドしたいのですが、ハイパーリンク定義で DataField="Base_Id" を使用するとエラーが発生します。

  2. base_Id を URL の最後に追加して、navigateurl="http://somelink&RecordId=baseId_value" を与えるようにしたい。TemplateField を試しましたが、Visual Studio が認識しません。

  3. 配達の遅れについては、データを比較して計算する必要があります。default.aspx.cs に関数を追加する方法はありますか? もしあれば、誰か例を教えてください。

どんなアイデアでも大歓迎です。どうもありがとう。=)

4

1 に答える 1

3

列を変換する

  <asp:hyperlinkfield text="Log" navigateurl="http://somelink&RecordId=" target="_blank" ItemStyle-Width="15%" HeaderText="Log" />

TemplateColumn に移動し、これを行います

<asp:TemplateField HeaderText="Log" ItemStyle-Width="15%">
        <ItemTemplate>
            <asp:HyperLink runat="server" 
                NavigateUrl='<%# GetUrl(Eval("Base_Id"))%>' 
                text="Log"></asp:HyperLink>
        </ItemTemplate>
    </asp:TemplateField>

コードビハインドで

protected string GetUrl(object id)
{
return "http://somelink&RecordId=" + id;
}

お役に立てれば!

よろしく、 ウロシュ

于 2013-10-28T18:00:21.890 に答える