If e.Row.IsNull(e.Col.Name) = False Then
e.StartDraw()
Dim cval As String = e.Row(e.Col.Name)
e.text = ""
Dim g As Graphics = e.Graphics
Dim fnt = New Font("微软雅黑", e.Table.Font.Size)
Dim x As Integer = e.x + 1
Dim y As Integer = e.Y + 1
Dim idx As Integer = 0
Do While idx > -1
idx = -1
Dim val As String = ""
Dim v = "(未)"
Dim i = cval.IndexOf(v)
If i > -1 Then
If idx = -1 Then
idx = i
val = v
ElseIf i < idx Then
idx = i
val = v
End If
End If
If idx > -1 Then
Dim temp As String = cval.Substring(0, idx)
g.DrawString(temp, e.Table.Font, Brushes.Blue, x, y)
x += g.MeasureString(temp, e.Table.Font).Width - 3
Output.Show(val)
' g.DrawString(val, fnt, Brushes.Red, x, y)
' x += g.MeasureString(val, fnt).Width - 1
cval = cval.Substring(idx + val.Length)
End If
Loop
cval = cval.Replace("(已)", Nothing)
g.DrawString(cval, e.Table.Font, Brushes.Gray, x, y)
e.EndDraw()
原先的内容我已经用自动行高全部展示出来.但是这段代码是用画板将原先的内容画出来了的,因为内容超出了单元格的长度,所以画出来的内容跟相邻的单元格内容重叠. 我怎样修改这个代码可以做到跟原先的内容一样,在本单元格显示出来(也就是换行)