2010-12-26 2 views
-1

私のdatadsourceはvarcharカラムのテーブルを照会しています。空のカラムが出てくるか、「1,2,3,4,5」のようなものが出てきます。GridView OnRowDataBound、CellのText.Length

RowDataBoundイベントでは、文字列が空でないかどうかをテストしたいので、その文字列を画像などで置き換えることができます。 しかし

e.Row.Cells[0].Text.Length 

戻り移入細胞9(これは正しい)、および空のもののために戻る6。

誰かがこれを私に説明できますか?この1列だけではありません。

答えて

1

代わりに、空の文字列を確認するには、常にString.IsNullOrEmptyメソッドを使用してください。働くこと、

if String.IsNullOrEmpty(e.Row.Cells[0].Text.Trim()) 
{ 
    // code in here would execute when the Text property is empty/null 
} 
+0

[OK]を、私はまだ「6」の意味を見つけることは非常に好奇心:

だから、あなたの現在の問題で、それは次のようになります。 Thanx –

+2

空の文字列は で置き換えられ、それはあなたに長さ6を与えます。 – gbs

+1

^^まさに。グリッドビューはテーブルとしてレンダリングされ、仕様ごとにtdを空にできないので、 が自動的に追加されます。 これらのフィールドでHTMLEncodeをfalseに設定することで回避することはできますが、それはお勧めできません。 – Dienekes

関連する問題