gpt4 book ai didi

c# - 在文本框中显示不同颜色的字符串(文本)asp.net

转载 作者:行者123 更新时间:2023-11-30 19:42:51 26 4
gpt4 key购买 nike

在我的 asp.net 网站上,我有一个提供日志信息的文本框。我正在使用这个日志来显示错误、成功和其他信息。我想做的是根据日志类型在文本框中以颜色显示结果文本。例如;我想将错误显示为红色文本,将成功显示为绿色等等。

我尝试了以下代码,但使用此代码会更改文本框整个内容的颜色。

    /// <summary>
/// colorIndex (0 = default, 1 = red, 2 = green)
/// </summary>
/// <param name="logValue"></param>
/// <param name="colorIndex"></param>
private void writeToLog(string logValue, int colorIndex)
{
if (colorIndex == 0)
{
TextBox2.ForeColor = Color.Black;
}
else if(colorIndex == 1)
{
TextBox2.ForeColor = Color.Red;
}
else if(colorIndex == 2)
{
TextBox2.ForeColor = Color.Green;
}

TextBox2.Text = "[ " + DateTime.Now + "] " + logValue + Environment.NewLine + TextBox2.Text;

}

其实我想要的输出如下:

enter image description here

你可以在上面的输出中看到同一个文本框中有三种不同颜色的文本。此输出实际上来自桌面应用程序。我想在 asp.net 网页中显示相同类型的输出?我该怎么做?请帮忙。提前致谢!!

最佳答案

谢谢大家的回答!正如 Knaģi 所说,由于客户可能不需要编辑日志中的值,我认为使用所见即所得编辑器是不必要的。因此,为了解决我的问题,我使用了 div 而不是文本框。

<div id = "log" style="border: thin solid #00CC99; width:844px; height:193px; overflow:auto;" runat= "server">
</div>

在我后面的代码中,我将日志填写为:

private void writeToLog(string logValue, int colorIndex)
{
logValue = "[ " + DateTime.Now + "] " + logValue;
if (colorIndex == 0)
{
string htmlCode = "<font style='color:black'>"+logValue+"</font><br/>";
log.InnerHtml = htmlCode + log.InnerHtml;

}
else if(colorIndex == 1)
{
string htmlCode = "<font style='color:red'>" + logValue + "</font><br/>";
log.InnerHtml = htmlCode + log.InnerHtml ;
}
else if(colorIndex == 2)
{
string htmlCode = "<font style='color:green'>" + logValue + "</font><br/>";
log.InnerHtml = htmlCode + log.InnerHtml ;
}



}

关于c# - 在文本框中显示不同颜色的字符串(文本)asp.net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16710774/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com