Table 在富文本框中
Table in richtextbox
在我之前的问题中,我发布了一个代码,在富文本框中添加了一个 table(实际上不是,只是将数据添加到来自 dgvw 的 richtxtbx)..代码是:
For i As Integer = 0 To dg2.Rows.Count - 2
SendMail.bodytxt.Text = SendMail.bodytxt.Text + "-"
For j As Integer = 0 To dg2.Columns.Count - 1
Try
SendMail.bodytxt.Text = SendMail.bodytxt.Text + vbTab + dg2.Rows(i).Cells(j).Value.ToString() + vbTab
Catch ex As Exception
End Try
SendMail.bodytxt.Text = SendMail.bodytxt.Text + vbLf
SendMail.bodytxt.Text = SendMail.bodytxt.Text + "--------------------------------------------" + vbLf
SendMail.bodytxt.Text = SendMail.bodytxt.Text + vbLf
Next
Next
结果如下所示:
--------------------------------------------
88795446
--------------------------------------------
Mr.
--------------------------------------------
Raiyan
--------------------------------------------
rashid
--------------------------------------------
Male
--------------------------------------------
我希望你明白问题出在哪里。每个单元格的值都被添加到一个新行中。我如何生成这样的视图:
HEADER TEXT HEADER TEXT HEADER TEXT
------------------------------------------------
Mr. ABC 0123456789
------------------------------------------------
Mr. DEF 987654321
------------------------------------------------
Mr. GHI 898989898
我的意思是一行的所有单元格值都在一行中......下一行将用破折号填充......然后下一行将包含下一行的单元格值......
我知道我的代码是正确的,但也许我遇到了一些 "ARRANGING THE CODE" 问题...或者这是因为我的富文本框大小?我这么想的原因是因为当我从包含 2/3 列的 dgvw 添加数据时,它按预期工作。那么如何修复它或实现我正在寻找的外观?
正如您提到的,当您从具有几列的数据网格视图向富文本框添加数据时..然后您得到了所需的结果..那为什么不设置 WordWarp 属性将 Rich-text-box 属性 设置为 true 然后添加数据。然后我想一行的单元格值不会转到下一行,也许你可以生成你想要的外观。
也许这会有所帮助
SendMail.bodytxt.Text = SendMail.bodytxt.Text + "------------------------------------------------------------------------------------------" + vbLf
For i As Integer = 0 To dg2.Rows.Count - 1
For j As Integer = 0 To dg2.Columns.Count - 1
Try
SendMail.bodytxt.Text = SendMail.bodytxt.Text + "• " + dg2.Rows(i).Cells(j).Value.ToString() + " •"
Catch ex As Exception
End Try
Next
SendMail.bodytxt.Text = SendMail.bodytxt.Text + vbLf
SendMail.bodytxt.Text = SendMail.bodytxt.Text + "------------------------------------------------------------------------------------------" + vbLf
Next
这甚至可能会给你一个更好的 look.You 必须添加尽可能多的“-”(破折号)need.Let 我知道它是否有效
在我之前的问题中,我发布了一个代码,在富文本框中添加了一个 table(实际上不是,只是将数据添加到来自 dgvw 的 richtxtbx)..代码是:
For i As Integer = 0 To dg2.Rows.Count - 2
SendMail.bodytxt.Text = SendMail.bodytxt.Text + "-"
For j As Integer = 0 To dg2.Columns.Count - 1
Try
SendMail.bodytxt.Text = SendMail.bodytxt.Text + vbTab + dg2.Rows(i).Cells(j).Value.ToString() + vbTab
Catch ex As Exception
End Try
SendMail.bodytxt.Text = SendMail.bodytxt.Text + vbLf
SendMail.bodytxt.Text = SendMail.bodytxt.Text + "--------------------------------------------" + vbLf
SendMail.bodytxt.Text = SendMail.bodytxt.Text + vbLf
Next
Next
结果如下所示:
--------------------------------------------
88795446
--------------------------------------------
Mr.
--------------------------------------------
Raiyan
--------------------------------------------
rashid
--------------------------------------------
Male
--------------------------------------------
我希望你明白问题出在哪里。每个单元格的值都被添加到一个新行中。我如何生成这样的视图:
HEADER TEXT HEADER TEXT HEADER TEXT
------------------------------------------------
Mr. ABC 0123456789
------------------------------------------------
Mr. DEF 987654321
------------------------------------------------
Mr. GHI 898989898
我的意思是一行的所有单元格值都在一行中......下一行将用破折号填充......然后下一行将包含下一行的单元格值......
我知道我的代码是正确的,但也许我遇到了一些 "ARRANGING THE CODE" 问题...或者这是因为我的富文本框大小?我这么想的原因是因为当我从包含 2/3 列的 dgvw 添加数据时,它按预期工作。那么如何修复它或实现我正在寻找的外观?
正如您提到的,当您从具有几列的数据网格视图向富文本框添加数据时..然后您得到了所需的结果..那为什么不设置 WordWarp 属性将 Rich-text-box 属性 设置为 true 然后添加数据。然后我想一行的单元格值不会转到下一行,也许你可以生成你想要的外观。
也许这会有所帮助
SendMail.bodytxt.Text = SendMail.bodytxt.Text + "------------------------------------------------------------------------------------------" + vbLf
For i As Integer = 0 To dg2.Rows.Count - 1
For j As Integer = 0 To dg2.Columns.Count - 1
Try
SendMail.bodytxt.Text = SendMail.bodytxt.Text + "• " + dg2.Rows(i).Cells(j).Value.ToString() + " •"
Catch ex As Exception
End Try
Next
SendMail.bodytxt.Text = SendMail.bodytxt.Text + vbLf
SendMail.bodytxt.Text = SendMail.bodytxt.Text + "------------------------------------------------------------------------------------------" + vbLf
Next
这甚至可能会给你一个更好的 look.You 必须添加尽可能多的“-”(破折号)need.Let 我知道它是否有效