C# 正在尝试更改ListView中背景标签的颜色
当twa处于不同的值时,我试图改变背景的颜色,但在我当前的代码中,数据没有触发,而是在我删除C# 正在尝试更改ListView中背景标签的颜色,c#,javascript,html,asp.net,.net,C#,Javascript,Html,Asp.net,.net,当twa处于不同的值时,我试图改变背景的颜色,但在我当前的代码中,数据没有触发,而是在我删除 <asp: Label id="TWAlabel" OnDataBinding="ListView2_OnDataBinding"> 但是当我删除OnDataBinding时,数据会触发,所以我不知道是什么错了。我是在Asp.net(C#)、JavaScript中完成这项工作的,数据来自Access数据库。这是我的密码: <style> .YellowThi
<asp: Label id="TWAlabel" OnDataBinding="ListView2_OnDataBinding">
但是当我删除OnDataBinding时,数据会触发,所以我不知道是什么错了。我是在Asp.net(C#)、JavaScript中完成这项工作的,数据来自Access数据库。这是我的密码:
<style>
.YellowThis
{
background-color:yellow;
}
.RedThis
{
background-color:red;
}
.GreenThis
{
background-color:green;
}
</style> <asp:ListView id="ListView2" runat="server" DataSourceID="SqlDataSource3" EnableViewState="False">
</InsertItemTemplate>
<ItemTemplate>
<span style="background-color: white;color: #333333; border: 2em; border-width:1em; border-color:black;">
Plant Name:
<asp:Label id="PlantLabel" runat="server" Text='<%# Eval("Plant") %>' />
<br />
Department #:
<asp:Label id="column1Label" runat="server" Text='<%# Eval("column1") %>' />
<br />
Department Name:
<asp:Label id="GroupLabel" runat="server" Text='<%# Eval("Group") %>' />
<br />
Job Code:
<asp:Label id="Job_CodeLabel" runat="server" Text='<%# Eval("Job_Code") %>' />
<br />
TWA:
<asp:Label id="TWALabel" OnDataBinding="ListView2_DataBinding" runat="server" Text='<%# Eval("TWA") %>' />
<br />
Job Classification:
<asp:Label id="Job_ClassificationLabel" runat="server" Text='<%# Eval("Job_Classification") %>' />
<br />
Job Function:
<asp:Label id="Job_FunctionLabel" runat="server" Text='<%# Eval("Job_Function") %>' />
<br />
Job Description:
<asp:Label id="Job_DescriptionLabel" runat="server" Text='<%# Eval("Job_Description") %>' />
<br />
<br />
</span>
</ItemTemplate>
<LayoutTemplate>
<div id="itemPlaceholderContainer" runat="server" style="font-family: Verdana, Arial, Helvetica, sans-serif; text-align:center; border:3em; border-color:black;">
<span runat="server" id="itemPlaceholder" />
</div>
<div style="text-align: left;background-color: white;font-family: Verdana, Arial, Helvetica, sans-serif;text-decoration:underline ;color: #FFFFFF;" >
</div>
</LayoutTemplate>
<SelectedItemTemplate>
<span style="background-color: white;font-weight: bold;color: #333333;">
<u>Plant Name</u>:
<asp:Label id="PlantLabel" runat="server" Text='<%# Eval("Plant") %>' />
<br />
Department #:
<asp:Label id="column1Label" runat="server" Text='<%# Eval("column1") %>' />
<br />
Department Name:
<asp:Label id="GroupLabel" runat="server" Text='<%# Eval("Group") %>' />
<br />
Job Code:
<asp:Label id="Job_CodeLabel" runat="server" Text='<%# Eval("Job_Code") %>' />
<br />
TWA:
<asp:Label id="TWALabel" runat="server" Text='<%# Eval("TWA") %>' />
<br />
Job Classification:
<asp:Label id="Job_ClassificationLabel" runat="server" Text='<%# Eval("Job_Classification") %>' />
<br />
Job Function:
<asp:Label id="Job_FunctionLabel" runat="server" Text='<%# Eval("Job_Function") %>' />
<br />
Job Description:
<asp:Label id="Job_DescriptionLabel" runat="server" Text='<%# Eval("Job_Description") %>' />
<br />
<br />
</span>
</SelectedItemTemplate>
</asp:ListView>
<script runat="server">
protected void ListView2_DataBinding(object sender, EventArgs e)
{
Label lbl = (Label)(sender);
int TWA = (int)(Eval("TWA"));
lbl.Text = TWA.ToString();
if (TWA >= 85)
{
if (TWA < 90)
{
lbl.CssClass = "YellowThis";
}
else
{
lbl.CssClass = "RedThis";
}
}
else
{
lbl.CssClass="GreenThis";
}
}
</script>
.黄色这个
{
背景颜色:黄色;
}
RedThis先生
{
背景色:红色;
}
格林斯先生
{
背景颜色:绿色;
}
工厂名称:
部门:
部门名称:
职务代码:
环球航空:
职位分类:
职务职能:
职位描述:
工厂名称:
部门:
部门名称:
职务代码:
环球航空:
职位分类:
职务职能:
职位描述:
受保护的无效列表视图2_数据绑定(对象发送方、事件参数e)
{
标签lbl=(标签)(发送方);
int TWA=(int)(评估(“TWA”);
lbl.Text=TWA.ToString();
如果(TWA>=85)
{
如果(TWA<90)
{
lbl.CssClass=“YellowThis”;
}
其他的
{
lbl.CssClass=“RedThis”;
}
}
其他的
{
lbl.CssClass=“GreenThis”;
}
}
您可以在代码隐藏中完成。遍历列表项
protected void add_color()
{
foreach(ListItem li in ListView2.Items)
{
Label your_label = (Label)li.FindControl" your_label_name";
int TWA = Convert.ToInt32(your_label);
if (TWA > 90)
{
your_label.BackColor = System.Drawing.Color.Yellow
}
}
}
这个问题已经有一年多的历史了,我不确定它是否对这里的任何人都有帮助 我认为代码中出现的错误是因为listview数据绑定事件是在Label中创建的,而不是在listview中创建的
您可以做的是在ListView控件中创建一个数据绑定事件,读取TWA标签的值,然后设置ListView控件的背景色。1。为什么有3个
标签?2.请将您的代码精简为一个片段。我已将其精简并修复了样式错误,但我的问题仍然存在。如果我必须删除我拥有的函数并执行完全不同的操作,我不会介意,它可以是javascript函数,也可以是c#函数,我只想有一个函数,可以根据TWA值更改背景颜色。谢谢你给我的任何帮助,我对这个有点陌生,你所说的所有标签控制到底是什么意思?到目前为止,我试着用你的建议还没有奏效。任何其他建议您只需将颜色更改逻辑放入其自己的方法中,然后在绑定listview后调用它。因此,如果您要在页面加载中绑定列表,那么您将在此之后调用此方法。然后对列表中的每个标签控件执行此操作。然后在调用绑定列表的方法后调用该方法。您还有其他建议吗?