2012-05-17 4 views
1

DateTime 열이있는 GridView가 있습니다. 내 날짜에는 시간대가 없을 수 있습니다. DataFormatString="{0:MM/dd/yyyy hh:mm tt}"을 사용하면 시간이 입력되지 않은 경우 12:00 AM을 기록합니다. 이것을 피할 수있는 방법이 있습니까? 즉, 날짜가 설정된 시간을 가지고 있다면, 그것을 보여 주거나 그렇지 않으면 날짜 만 표시합니까?GridView 날짜/시간 열 조건부 서식

답변

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", ""); 
} 

그런 식으로해야합니다.

1

서버 측보다 특별한 제한이없는 경우 날짜 시간을 문자열로 변환하고 필요한 데이터를 반환하고 그리드 측에서는 문자열 값임을 그리드에 알릴 수 있습니다.