I have yet to let a DataGrid AutoGenerate (in production) it's columns. The reason for this is control of the output. The only way to go is Bound or Template columns if you want complete control over what's happening on your grid. Having said that, if you're really happy with your grid the way it is then the solution is in your SQL. If you're calling a Stored Procedure or just using an inline SQL statement you can manage the delivered output via the SQL... From BOL (you'll need to look at BOL to see the code that will solve your problem):
CAST and CONVERT
Explicitly converts an expression of one data type to another. CAST and CONVERT provide similar functionality.
Syntax
Using CAST:
CAST ( expression AS data_type )
Using CONVERT:
CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
Arguments
expression
Is any valid Microsoft® SQL Server™ expression. For more information, see Expressions.
data_type
Is the target system-supplied data type, including bigint and sql_variant. User-defined data types cannot be used. For more information about available data types, see Data Types.
length
Is an optional parameter of nchar, nvarchar, char, varchar, binary, or varbinary data types.
style
Is the style of date format used to convert datetime or smalldatetime data to character data (nchar, nvarchar, char, varchar, nchar, or nvarchar data types), or the string format when converting float, real, money, or smallmoney data to character data (nchar, nvarchar, char, varchar, nchar, or nvarchar data types).
The same goes for the JET db Engine (although you need to use JET syntax).