嗨我有一个像ME_NAME这样的字符串,我在网格视图中显示为headr但是现在我需要从字符串中删除第一个字符ME_并在gridview标题中仅显示NAME。但是我在这里得到了来自数据库的标头值。
答案 0 :(得分:3)
我想我已经知道你在谈论什么,Joy。
您正在使用GridView,您可以使用AutoGenerateColumns为true的数据源直接绑定。要获得要显示的标题,可以像这样修改SQL查询 -
SELECT
ME_NAME AS [Name]
FROM
TABLE
编辑:正如你所说,你想从前端做到这一点,你可以挂钩到GridView的OnRowDataBound事件,然后编写以下代码 -
if(e.Row.RowType == DataControlRowType.Header)
{
//Apply the logic for removing the "ME_" string from the header columns.
}
答案 1 :(得分:0)
很抱歉,如果这太字面了......
var olsstr = "ME_NAME";
var newstr = olsstr.Remove(0, 3);
答案 2 :(得分:0)
如果您的字符串始终以相同的值开头,或者变体非常有限,那么简单的.Replace()
就可以完成这项任务:
String str = "ME_NAME";
String str2 = "ANOTHER_NAME";
str = str.Replace("ME_", String.Empty); // str == "NAME"
str2 = str2.Replace("ME_", String.Empty).Replace("ANOTHER_", String.Empty);
如果变化较大,您可能需要查看使用Regular Expressions。
答案 3 :(得分:0)
有许多方法可以从字符串中删除“ME_”部分。这是一对你可以使用的:
string s1 = "ME_NAME";
string s2 = s1.Replace("ME_", "");
// or
s2 = s1.Split('_')[1];
// or
s2 = s1.Substring(s1.IndexOf('_') + 1);
答案 4 :(得分:0)
在你的第二条评论中,听起来你采取了错误的做法。如果这些是数据库中的列名,那么实际上应该在SQL子句中重命名它们:
SELECT ME_NAME As Name, ME_BIRTHDAY As Birthday FROM tbl_ME;