2011-10-17 2 views
0

C# 문제 ... 데이터베이스에서 datetime 형식을 1/1/1900 08:00:00 AM 수신하고 시간 부분 만 가져 와서 HH로 3 개의 콤보 상자를 채 웁니다. MM (오전 또는 오후). 내가 얻고있는 두 가지 다른 데이터 세트에 대해서도 똑같은 작업을해야한다. 어떻게해야할지 모른다. ..분리하는 방법 콤보 상자의 시간 부분

아무도 도와 줄 수 있습니까? 이것은 내가 잠시 가지고 무엇

... 나는 안돼서 : 0)

DateTime bh = Convert.ToDateTime(puf.GetResults["Begin_Hour"].ToString()); 
    DateTime eh = Convert.ToDateTime(puf.GetResults["End_Hour"].ToString()); 
    string bhs=bh.ToShortTimeString(); 
    string ehs=eh.ToShortTimeString(); 
+0

어디서 문제가 있습니까? 모든 예외 메시지? –

답변

0

그냥 시간을 얻기 위해 잘 작동한다고이 무엇입니까.

사용자 정의 형식을 지정할 수있는 오버로드가있는 ToString() 메서드를 사용할 수 있습니다. 이 MSDN link을 참조하십시오.

따라서 bhs.ToString("t");을 사용하여 시간, 분 및 오전/오후를 인쇄 할 수 있습니다. "4:05 PM"

당신은 여기에서 자세한 내용을보실 수 있습니다 :

0

사용이

bhs.Format("{0:t}", dt); 

결과는 원하는 형식이됩니다 (DT은 DateTime 개체입니다) String Format for DateTime

0

개체/데이터 테이블을 사용하는 경우 FormatString 속성과 함께 DisplayMember/ValueMember 속성을 설정하는 것이 좋습니다. FormattingEnabled = true, FormatString = "t", DisplayMember = ValueMember = "[Begin_Hour|End_Hour]"을 설정하십시오.

[|] 구문이 Regex에서 빌려오고 있다는 것을 유의하십시오. 이는 값이 작동 함을 의미합니다. 그런 다음 기본 데이터 소스를 ComboBox.DataSource 속성에 할당하면됩니다. 일반적으로 UI 요소에 표시/형식을 처리하고 데이터 요소를 변경하지 않는 것이 좋습니다. 많은 컨트롤이 이러한 다양한 데이터 표시 속성을 제공합니다.

관련 문제