2015-07-10 142 views
1

我有一個帶有文本框列的datagridview。如果我想顯示一個包含vbTab的文本,那麼這個Tab就會被刪除,並且不會顯示任何製表符。在Datagridview中顯示vbTab

如果我編寫例如"text" & vbTab & "text"編程到datagridview的單元格中顯示的文本是texttext。在正常的文本框中工作得很好。

這可以以某種方式糾正? 謝謝

回答

0

您可以使用DataGridViewCellFormatting事件來修改文本的外觀。在下面的代碼中,我用垂直條替換了標籤(但可以更改它)。

Private Sub dataGridView1_CellFormatting(ByVal sender As Object, _ 
     ByVal e As DataGridViewCellFormattingEventArgs) _ 
     Handles dataGridView1.CellFormatting 
    If Me.dataGridView1.Columns(e.ColumnIndex).Name = "TheTextColumnName" Then 
    If e.Value IsNot Nothing Then 
     e.Value = CType(e.Value, String).Replace(vbtab,"|") 
    End If 
    End If 
End Sub 
+0

謝謝,我已經這樣做,但它不能解決問題。製表符的優點在於它將文字對齊。 – sharkyenergy

+0

如果處理CellPainting事件,您將使用Graphics.DrawString()來顯示單元格文本。然後,您可以使用製表符分隔符對字符串進行拆分(),並將字符串中的選項卡式項目製作爲多個Graphics.DrawString以考慮對齊。 – Graffito