2016-04-08 15 views
0

DataGridview行のコレクションを印刷するこのコードブロックがあります。私はそれぞれの行を別々の行に印刷したいが、それらはすべて同じ行に印刷されている。何か案が?DataGridViewRowCollection印刷の問題(改行は表示されません)

see the screenshot

foreach (DataGridViewRow row in rows) 
{ 

DataRow myRow = (row.DataBoundItem as DataRowView).Row; 

string myStr = string.Join("|", myRow.ItemArray.Select(p => p.ToString()).ToArray()); 

myStr += Environment.NewLine; 

graphics.DrawString(myStr, new Font("Courier New", 12), new SolidBrush(Color.Black), startX, startY + Offset); 

} 

答えて

1

あなたは座標startYをインクリメントしていません。

あなたが、何らかの理由で、各行に1つの大きな文字列を作成する場合はこのようにそれを作る、

graphics.DrawString(...) 

startY = startY + 20; 

を追加します。

string myStr = string.Empty; 

foreach (DataGridViewRow row in rows) 
{ 
    DataRow myRow = (row.DataBoundItem as DataRowView).Row; 
    string myStr = string.Join("|", myRow.ItemArray.Select(p => p.ToString()).ToArray()); 
    myStr += "\r\n"; 
} 

graphics.DrawString(myStr, new Font("Courier New", 12), new SolidBrush(Color.Black), startX, startY + Offset); 
関連する問題