0

データベース(MS 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','99381','99382','99383','99384','99385','99386','99391','99392'

現在、Windowsフォームアプリケーションのデータグリッドビューのように表示されます。 画像1

私が期待したことはおそらくそうです(見出しテキストを無視してください、それは問題ではありません)。 画像2

これは、長い文字列を多くの短い文字列に分割することを意味します。各文字列は1行を占めます。元々、次のコードによってasp.netgridviewでうまく実行されていました。

<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で使用したいのですが、列を編集してアイテムをカスタマイズする方法がわかりません。しかし、私はそれらが似ているかもしれないと思った。

手伝ってくれてありがとう。

4

1 に答える 1

0

Windowsアプリケーションでは、最初に行う必要があるのは、DataGridView RowStyleを変更して、コンテンツに基づいて自動サイズ変更できるようにすることです。

dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.Fill;
dataGridView1.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True;

次に、コンマを改行に置き換えます

Eval("test").ToString().Replace(",", System.Environment.NewLine);
于 2012-05-08T01:18:43.463 に答える