为了账号安全,请及时绑定邮箱和手机立即绑定

在 ASP.NET 条件下更改 Gridview 颜色

在 ASP.NET 条件下更改 Gridview 颜色

C#
交互式爱情 2021-10-23 16:35:14
我是新手asp.net,我有一个对我的职业生涯非常重要的项目,如果你们能帮助我,那就太棒了..问题是:我正在使用此gridview代码,如果条件文本为“已接受”,我想将“状态”数据字段颜色更改为绿色,问题是我已经尝试了互联网上使用的所有内容并更改了超过 15 个代码隐藏,但我只是不能让它改变颜色它只是不起作用。这是gridview代码<asp:UpdatePanel runat="server" ID="srchuppan" UpdateMode="Always"><ContentTemplate><asp:GridView ID="GridView5" Style="margin-bottom: 2%; width: 100%; font-family: '0 Nazanin'; direction: rtl; background-color: white; margin: auto; text-align: center;" CssClass="table table-bordered resgrid" AutoGenerateColumns="false" runat="server"><Columns>    <asp:TemplateField ItemStyle-Font-Size="13" HeaderStyle-Font-Size="14" HeaderText="ردیف">        <ItemTemplate>            <%# Container.DataItemIndex+1 %>        </ItemTemplate>    </asp:TemplateField>    <asp:TemplateField ItemStyle-Font-Size="13" HeaderStyle-Font-Size="14" HeaderText="یادداشت">        <ItemTemplate>            <asp:ImageButton ID="btnpopup" runat="server" ToolTip='<%# Eval("ydd") %>' Width="40" Height="40" ImageUrl='<%# Eval("cmcount") %>' />            <ajax:ModalPopupExtender ID="mpe" runat="server" TargetControlID="btnpopup" PopupControlID="pnlpopup"                CancelControlID="btnCancelpopup" EnableViewState="true" DropShadow="true" />            <asp:Panel ID="pnlpopup" CssClass="alertBox backpic" BackColor="White" runat="server" Width="400px">                <h1>یادداشت خود را بنویسید</h1>                <p style="color: red; font-size: 12px">(<%# Eval("order_id") %>)</p>                <hr />                <textarea id="YY" class="form-control" rows="3" style="width: 80%; margin: auto; font-size: 16px" runat="server"></textarea>                <hr />                <asp:Button ID="Yadsrch" OnClick="Yadsrch_Click" CssClass="DokmeDefBlue" runat="server" Text="ثبت یادداشت" />                <asp:Button ID="btnCancelpopup" CssClass="DokmeDefRed" runat="server" Text="بستن" />                <hr />            </asp:Panel>        </ItemTemplate>
查看完整描述

1 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

而不是使用“BoundField”,你应该使用“TemplateField”作为状态


// replace this line

<asp:BoundField DataField="ostatus" ItemStyle-Font-Size="13" HeaderStyle-Font-Size="14" HeaderText="وضعیت" />


// use this

<asp:TemplateField HeaderText="وضعیت">

    <ItemTemplate>

        <span style="color: <%# (Eval("ostatus").ToString() == "Accepted") ? "green" : "black;" %>">

            <%# Eval("ostatus") %>

        </span>     

    </ItemTemplate>

</asp:TemplateField>

我已经使用三元运算符来检查状态是否“已接受”,如果是,则使用行内 CSS 作为 style="color:green;" 将文本颜色更改为绿色 或 style="color:black;" 除此以外。Eval 方法类似于访问有界数据源值的 BoundField 标记。


有很多方法可以实现这一点,根据您目前的情况,这似乎很简单。


希望能帮助到你


查看完整回答
反对 回复 2021-10-23
  • 1 回答
  • 0 关注
  • 156 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信