0

プリンターに残っている消耗品のパーセンテージを取得する、作成しようとしている Web アプリがあります。わかりやすい 1 ~ 100 パーセントの数値で表示します。その数を取得するには、残ったものに 100 を掛け、それを可能な合計で割る必要があります。

SQL Server テーブルからのデータを取得して、データ グリッドビューにレンダリングする前に変更することができませんでした。どんな助けでも大歓迎です。

私はすでにコードビハインドでそれを整数に変換しようとしましたが、うまくいきませんでした。これが私のコードです。

ASPX

<asp:GridView ID="GridView2" runat="server" AllowSorting="True" 
        AutoGenerateColumns="False" BackColor="#DEBA84" BorderColor="#DEBA84" 
        BorderStyle="None" BorderWidth="1px" CellPadding="3" CellSpacing="2" OnRowDataBound = "changeToPercent" 
        DataSourceID="SqlDataSource1" EnableModelValidation="True">
        <Columns>
            <asp:BoundField DataField="p_ipaddress" HeaderText="p_ipaddress" 
                SortExpression="p_ipaddress" />
            <asp:BoundField DataField="s_prtmarkerssuppliesdescription" 
                HeaderText="s_prtmarkerssuppliesdescription" 
                SortExpression="s_prtmarkerssuppliesdescription" />
            <asp:BoundField DataField="s_prtMarkersSuppliesLevel" 
                HeaderText="s_prtMarkersSuppliesLevel" 
                SortExpression="s_prtMarkersSuppliesLevel" />
        </Columns>
        <FooterStyle BackColor="#F7DFB5" ForeColor="#8C4510" />
        <HeaderStyle BackColor="#A55129" Font-Bold="True" ForeColor="White" />
        <PagerStyle ForeColor="#8C4510" HorizontalAlign="Center" />
        <RowStyle BackColor="#FFF7E7" ForeColor="#8C4510" />
        <SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="White" />
    </asp:GridView>
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:XrxDBCWWConnectionString %>" 
        SelectCommand="usp_SUPPLYPERCENTAGE" SelectCommandType="StoredProcedure"
        CancelSelectOnNullParameter="False">
        <SelectParameters>
            <asp:ControlParameter ControlID="percentBox" DefaultValue="10" 
                Name="PCT_REQUESTED" PropertyName="Text" Type="Int32" />
            <asp:Parameter DefaultValue="" Name="PRINTER_ID" Type="String" />
        </SelectParameters>
    </asp:SqlDataSource>

私が試したすべてが惨めに失敗したため、使用するCSコードがありません

4

2 に答える 2

0

行データにアクセスできる GridView の RowDataBound イベントを接続してみてください。行データがグリッド ビューにバインドされる前に更新できます。

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.rowdatabound.aspx

void GridView2_RowDataBound(Object sender, GridViewRowEventArgs e)
{

if(e.Row.RowType == DataControlRowType.DataRow)
{
  // Display the company name in italics.
  e.Row.Cells[1].Text = "<i>" + e.Row.Cells[1].Text + "</i>";

}

}
于 2013-04-30T14:41:06.837 に答える