DateTime列を持つGridViewがあります。私の日付には時間の部分がないかもしれません。を使用DataFormatString="{0:MM/dd/yyyy hh:mm tt}"
すると、時間が入力されていないときに午前12:00が書き込まれます。これを回避する方法はありますか?つまり、日付に時刻が設定されている場合はそれを表示し、そうでない場合は日付だけを表示しますか?
2 に答える
1
特別な制限がない場合は、サーバー側から日時を文字列に変換して必要なデータを返すことができ、グリッド側ではそれが文字列値であることをグリッドに通知するだけです。
于 2012-05-18T13:17:09.577 に答える
0
フォーマット文字列で条件を使用することはできません。GridViewのItemDataBoundイベントにイベントハンドラーを追加し、自分でフォーマットする必要があります。
void Grid_ItemDataBound(object sender, GridItemEventArgs e)
{
var date = e.Item[<index>].Text;
if (date.EndsWith(" 12:00 AM"))
e.Item[<index>].Text = date.Replace(" 12:00 AM", "");
}
そんな感じ。
于 2012-05-18T13:30:30.857 に答える