【发布时间】:2014-01-22 07:27:37
【问题描述】:
我有一个绑定到 sql 数据库的 gridview。当用户输入数据时,他们必须指出该单元格的信息是否完整。为此,他们在语句末尾输入 /end/ ,它将自动更改单元格颜色。如果什么都不输入,那么什么都不会发生。
代码如下:
if (dataItem != null)
{
var label = dataItem["Status"].FindControl("Statuslbl") as Label;
if (label != null)
{
var item = dataItem;
var text = label.Text;
if (text.Contains("/end/"))
{
item["Status"].BackColor = Color.Lime;
item["Status"].Text = item["Status"].Text.Replace(@"/end/", @"");
}
else
{
item["Status"].BackColor = Color.Salmon;
}
}
}
它不只是像我需要的那样隐藏“/end/”,而是隐藏了整个单元格的内容。
我该如何解决这个问题?
【问题讨论】:
-
如果字符串只包含“/end/”,则结果将为空白。考虑在中间字符串字段中执行操作并调试结果。还有,这里@有什么用?
-
@EmmadKareem,你能举个例子吗?我看到了另一个带有@的帖子,但不管有没有它,它的工作方式都是一样的。
-
关于@,@ 可以用来转义字符,所以代替 s="c:\\temp\\x.txt";你可以写 s=@"c:\temp\x.txt";但在你的情况下,我认为它没有任何价值。至于值为空的原因,我不确定您是否正确访问了控件的值。在此处查看示例:jigar.net/articles/viewhtmlcontent4.aspx