Binding dataset to the datagrid... which contains 6 columns and 1 column has string.empty value

when I see that row.col.value, it contains " " in it. If I hold this value in the string variable, say str1, then str1 = " ". But in the database that field had zero length string, that is string.empty(and database is mssql2k) even, i checked the length of that field using the SQL query, it gives 0 (zero), then why this datagrid is interpreting that string.empty = " ". So finally to solve this I have to replace that " " with "". But still I don't get it... is this a normal way or am I missing something.