1

gridview.Iam のハイパーリンク列にある値を分割しようとしています。必要なものを取得できません。

これが私のコードです

            <asp:TemplateField HeaderText="Budgeted Profit" SortExpression="Budgeted Profit" HeaderStyle-CssClass="StrongText"  HeaderStyle-Font-Bold="true" HeaderStyle-Font-Size="Medium" 
                                  HeaderStyle-ForeColor="Blue" HeaderStyle-Font-Underline="true"  ItemStyle-Width="3%" ItemStyle-HorizontalAlign="Left" ItemStyle-VerticalAlign="Bottom" HeaderStyle-HorizontalAlign="Left" HeaderStyle-VerticalAlign="Bottom">
                        <ItemTemplate>
                              <asp:HyperLink runat="server" ID="HyperLink7" NavigateUrl='<%#"PM_Prof_budgetedGraph.aspx?ProjectID="+ Eval("Project ID")%>' Text='<%#Eval("Budgeted Profit").ToString().Split(new string[]{";"},StringSplitOptions.None)[0]%>' ForeColor="BLUE" Target="_blank"></asp:HyperLink>
                              <asp:Label ID="lblProfit" runat="server"></asp:Label>
                        </ItemTemplate>
            </asp:TemplateField>

私はこれを試しました:

  Text=<%# Eval("Budgeted Profit").ToString().Split('-')[0] %> />

これについて私を助けてくれませんか

4

1 に答える 1

0

次のように、コード ビハインドで保護された関数を作成します。

    protected string GetProfitText(object o)
    {
        string budget = o.ToString();
        return budget.Split('-')[0];

    }

そしてaspxファイルで:

<asp:TemplateField HeaderText="Budgeted Profit" SortExpression="Budgeted Profit" 
                    HeaderStyle-CssClass="StrongText"  HeaderStyle-Font-Bold="true" HeaderStyle-Font-Size="Medium" 
                    HeaderStyle-ForeColor="Blue" HeaderStyle-Font-Underline="true"  ItemStyle-Width="3%" ItemStyle-HorizontalAlign="Left" ItemStyle-VerticalAlign="Bottom" HeaderStyle-HorizontalAlign="Left" HeaderStyle-VerticalAlign="Bottom">
    <ItemTemplate>
        <asp:HyperLink runat="server" ID="HyperLink7" 
                        NavigateUrl='<%#"PM_Prof_budgetedGraph.aspx?ProjectID="+ Eval("Project ID")%>' 
                        Text='<%# GetProfitText(DataBinder.Eval(Container.DataItem,"Budgeted Profit")) %>' 
                        ForeColor="BLUE" Target="_blank"></asp:HyperLink>
        <asp:Label ID="lblProfit" runat="server"></asp:Label>
    </ItemTemplate>
</asp:TemplateField>
于 2012-12-20T04:54:49.027 に答える