Geo*_*Ego 3 html c# sql asp.net gridview
我有一个我在C#中编写的SharePoint Web部件,用于根据用户选择显示SQL Server数据.我使用DataReader提取数据,用它填充DataSet,并将DataSet设置为GridView中的DataSource,并将该控件添加到我的页面:
GridView outputGrid = new GridView();
outputGrid.CssClass = "OutputGrid";
outputGrid.DataSource = flipped_ds1;
outputGrid.RowDataBound += outputGrid_RowDataBound;
outputGrid.DataBind();
Controls.Add(outputGrid);
Run Code Online (Sandbox Code Playgroud)
这给了我一个带有声明的CSS类的简单HTML表,就是它.我面临的唯一问题是数据字段中的换行符根本没有呈现.我只是得到一个文本块,忽略了数据库呈现为HTML时存在的中断.在单步执行代码时,我看到换行符以"\ r \n"的形式作为文本进入.我尝试了一个正则表达式:
Regex rgx = new Regex("\r\n");
string inputStr = Convert.ToString(dr[x]);
string outputStr = rgx.Replace(inputStr, "<br />");
newRow[ds3.Tables["Bobst Specs 3"].Columns[x]] = outputStr;
Run Code Online (Sandbox Code Playgroud)
虽然它确实检测并替换换行符,但我只是得到
没有换行符的文本" ".在查看HTML源代码时,它会在我指定"
"的位置插入以下行:
<br />
Run Code Online (Sandbox Code Playgroud)
我还尝试将我的SQL查询更改为以下内容:
SELECT REPLACE (fldCustomerName, '. ', '.' + @NewLineChar)
Run Code Online (Sandbox Code Playgroud)
这显然会带来更多新的线条.我可以看到它们存在,因为如果我也插入正则表达式它们会受到影响,但不会创建换行符.我不知道如何更换这些,以及如何更换线条来实际打破.
Kro*_*ass 14
在网格视图中禁用所需列中的HTML呈现
<asp:BoundField DataField="MyColumn" HtmlEncode="false" />
Run Code Online (Sandbox Code Playgroud)
并在现场
为您的文本添加新行
更新:我理解的是新的线条没有显示在gridview中,然后你试图通过替换\n来强制它<br />,我同意你的意见.但是br标签转换成html实体的下一个问题.并且您没有在gridview中使用强定义的列.它是自动生成列.如果是这样,你所有的步骤都是正确的,还有一件事要做
| 归档时间: |
|
| 查看次数: |
25271 次 |
| 最近记录: |