C# 在datagridview列中将长字符串包装为多行
我在数据库SQL表中有一个很长的字符串,例如C# 在datagridview列中将长字符串包装为多行,c#,.net,winforms,data-binding,datagridview,C#,.net,Winforms,Data Binding,Datagridview,我在数据库SQL表中有一个很长的字符串,例如 '99024','99050','99070','99143','99173','99191','99201','99202','99203','99204','99211','99212','99213','99214','99215','99217','99218','99219','99221','99222','99231','99232','99238','99239','99356','99357','99371','99374','99
'99024','99050','99070','99143','99173','99191','99201','99202','99203','99204','99211','99212','99213','99214','99215','99217','99218','99219','99221','99222','99231','99232','99238','99239','99356','99357','99371','99374','99381','99382','99383','99384','99385','99386','99391','99392'
现在它显示为windows窗体应用程序的datagridview。
我所期望的可能是忽略标题文本,这无关紧要。
这意味着将一个长字符串拆分为多个短字符串。每个字符串占用一行。
最初,通过以下代码在asp.net gridview中做得很好:
<ItemTemplate>
<div style="width: 75px; overflow: hidden; white-space: nowrap; word-wrap: break-word;">
<asp:TextBox ID="TextBox1" runat="server" Wrap="true" TextMode="MultiLine" Text='<%# Eval("ICD9").ToString().Replace(",", Environment.NewLine.ToString())%>'
Rows='<%# Eval("test").ToString().Split(new string[] { "," }, StringSplitOptions.None).Length %>'
</asp:TextBox>
</div>
</ItemTemplate>
<EditItemTemplate>
<div style="width: 75px; overflow: hidden; white-space: nowrap; word-wrap: break-word;">
<asp:TextBox ID="TextBox2" runat="server" Wrap="true" TextMode="MultiLine" Text='<%# Eval("ICD9").ToString().Replace(",", Environment.NewLine.ToString())%>
'>
</asp:TextBox>
</div>
</EditItemTemplate>
现在我想在windows窗体DataGridView中使用它,我不知道如何编辑该列以自定义该项。但我只是觉得它们可能是相似的
感谢您的帮助。在windows应用程序中,首先需要更改DataGridView行样式,以便根据您的内容自动调整大小
dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.Fill;
dataGridView1.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True;
然后用换行符替换逗号
Eval("test").ToString().Replace(",", System.Environment.NewLine);
关于替换文本,正确的位置在哪里?你复制了我的asp.net代码。这是不正确的。对不起,我这里没有Visual Studio,所以我不确定语法。但是aims将逗号替换为换行符,因此每个值都显示在一行上。