Salve a tutti avrei un piccolo problema con un datagrid dovrei intercettare il contenuto della cella "descrizione" e poi in caso il contenuto superi i 20 caratteri tagliare il testo a 20 caratteri.
Ho provato a fare una funzione del genere:
Sub colore(ByVal sender As Object, ByVal e As DataGridItemEventArgs)
Dim z As Integer
Dim Testo As String
If e.Item.ItemType = ListItemType.Item Or _
e.Item.ItemType = ListItemType.AlternatingItem Then
'Snip out the ViewCount
Dim drv As DataRowView = CType(e.Item.DataItem, System.Data.DataRowView)
Testo = Convert.ToString(drv("Descrizione"))
Select Case Testo
Case Is = "***"
For z = 0 To (e.Item.Cells.Count - 1)
e.Item.Cells(z).BackColor = Color.Red
e.Item.Cells(z).ForeColor = Color.White
' Response.Write(z)
Next
Case Is <> ""
If Testo.Length > 20 Then
Testo = Testo.Substring(1, 17)
Testo += "..."
e.Item.Cells(z).Text = Testo
End If
For z = 0 To (e.Item.Cells.Count - 1)
e.Item.Cells(z).BackColor = Color.White
e.Item.Cells(z).ForeColor = Color.Blue
' Response.Write(z)
Next
End Select
End If
End Sub
Il problema è che mi mette sia la descrizione tagliata che quella originale qualcuno sa aiutarmi?
grazie!!!!!!

Rispondi quotando