Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 根据条件更改列表框项目的颜色_C#_Asp.net_Listbox - Fatal编程技术网

C# 根据条件更改列表框项目的颜色

C# 根据条件更改列表框项目的颜色,c#,asp.net,listbox,C#,Asp.net,Listbox,我有一个列表框,通过ping到该ip来检查打印机列表的状态,如果连接超时,我想让它显示为“红色”,我如何做到这一点,我使用以下代码: Ping ipping = new Ping(); PingReply replyab01 = ipping.Send(abilene01, 1000); if (replyab01 != null) { ZplPrinterStatus.Items.Add("Abilene Primary(01) Printer Status:"+ replyab01

我有一个列表框,通过ping到该ip来检查打印机列表的状态,如果连接超时,我想让它显示为“红色”,我如何做到这一点,我使用以下代码:

Ping ipping = new Ping();
PingReply replyab01 = ipping.Send(abilene01, 1000);
if (replyab01 != null)
{
     ZplPrinterStatus.Items.Add("Abilene Primary(01) Printer Status:"+ replyab01.Status);
}
else
{
     ZplPrinterStatus.Items.Add("Abilene Primary(01) Printer Status:" + "Error Printer Time out");
     // ZplDownSatus.Visible = true;
}

请帮助:(

您是希望更改服务器端的颜色还是在客户端进行更改? 如果您只是想从ASP.NET/Server端对其进行更改,则只需创建一个新的列表项,并在将其添加到列表框之前为其指定一个颜色为“红色”的样式属性-

Ping ipping = new Ping();
PingReply replyab01 = ipping.Send(abilene01, 1000);
if (replyab01 != null)
{
    (if replyab01.Status == IPStatus.Success)
    {
        ZplPrinterStatus.Items.Add("Abilene Primary(01) Printer Status:" + replyab01.Status);
    }
}
else
{
    ListItem item = new ListItem("Abilene Primary(01) Printer Status:" + "Error Printer Time out");
    item.Attributes["style"] = "color:red;";
    ZplPrinterStatus.Items.Add(item);
}

您是希望在服务器端更改颜色还是在客户端更改颜色? 如果您只是想从ASP.NET/Server端对其进行更改,则只需创建一个新的列表项,并在将其添加到列表框之前为其指定一个颜色为“红色”的样式属性-

Ping ipping = new Ping();
PingReply replyab01 = ipping.Send(abilene01, 1000);
if (replyab01 != null)
{
    (if replyab01.Status == IPStatus.Success)
    {
        ZplPrinterStatus.Items.Add("Abilene Primary(01) Printer Status:" + replyab01.Status);
    }
}
else
{
    ListItem item = new ListItem("Abilene Primary(01) Printer Status:" + "Error Printer Time out");
    item.Attributes["style"] = "color:red;";
    ZplPrinterStatus.Items.Add(item);
}

Items.Add没有接受颜色的签名。我给你的应该有效。到底发生了什么?异常还是它没有更新颜色?这不起作用,伙计,还有其他建议吗?它没有更新颜色。超时的项目仍然有效black@BeastMode这应该行得通。你在代码中做什么了吗?是吗是否有任何css类正在“覆盖”更改?@Ageonix上述代码对我有效唯一的问题是调试中从未命中代码的其他部分,因为replyab01始终不为null,因此if only会通过if条件,因此我将其更改为检查ping回复状态,并修复了该问题。Items.Add没有接受颜色的签名。我给你的应该有效。到底发生了什么?异常还是它没有更新颜色?这不起作用,伙计,还有其他建议吗?它没有更新颜色。超时的项目仍然有效black@BeastMode这应该可以。你在代码中做了其他的事情吗?有没有css类在“覆盖”更改时?@Ageonix上述代码对我有效唯一的问题是调试中从未命中代码的其他部分,因为replyab01始终不为null,因此if only通过if条件,因此我将其更改为检查ping回复状态,并修复了该问题。