2013-05-01 68 views
1

我有一個gridview與下面的boundfiled。 DataField是十進制值。如果值大於0,我想在grdiview中顯示爲True,否則爲false。如何控制boundfileld。任何人都可以幫忙如果提供解決方案,我可以使用TemplateField。如果條件GridView的綁定字段?

<asp:BoundField HeaderText="fieldone" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="Left" 
    DataField="Higher" NullDisplayText="0"> 
    <HeaderStyle HorizontalAlign="Left"></HeaderStyle> 
    <ItemStyle HorizontalAlign="Left"></ItemStyle> 
</asp:BoundField> 
<asp:BoundField HeaderText="fieldtwo" Rebate" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="Left" 
    DataField="Lower" NullDisplayText="0"> 
    <HeaderStyle HorizontalAlign="Left"></HeaderStyle> 
    <ItemStyle HorizontalAlign="Left"></ItemStyle> 
</asp:BoundField> 
+0

任何你不能使用模板字段的原因?或者不能在綁定之前更改數據源? – Damith 2013-05-01 13:42:47

+0

我可以使用模板字段。 – software 2013-05-01 13:43:24

+0

[評估綁定字段上的數據字段以相應地顯示文本](http://stackoverflow.com/questions/13941184/evaluate-datafield-on-boundfield-to-display-text-accordingly) – Damith 2013-05-01 13:44:24

回答

3

您可以使用templatefield &在其中放置一個標籤控件。像

<asp:TemplateField> 
       <ItemTemplate> 
        <asp:Label ID="lblStatus" runat="server" Text='<%# (Convert.ToDecimal(Eval("UnitPrice")) > 0) ? "True" : "False" %>'></asp:Label> 
       </ItemTemplate> 
      </asp:TemplateField> 

另外的東西,你也可以使用RowDataBound事件的GridView &使用FindControl的適用相同。

+0

當我使用這段代碼在服務器頁面中出現錯誤「The」?字符不能在這裏使用「 – software 2013-05-06 17:14:10

+0

@software這對我很有用你可能會遺漏一個引號,請確保所有的服務器端代碼都正確地包含在單引號'<%#你的代碼在這裏%>' – 2013-05-07 04:52:40

+0

對我也有用:)謝謝 – software 2013-05-07 18:23:24