2

TextBox 컨트롤에 날짜 값이있는 양식이 있습니다. 이 양식은 DataSet 및 SQL 2005 CE 데이터베이스에 대해 BindingSource를 사용하여 데이터 바인딩을 사용합니다. 날짜 형식을 제어하려면 어디에서해야합니까? 길을 따라 가던 곳에서는 시간 부분을 제거 할 수있는 가능성을 보지 못했습니다.데이터 바인딩 된 WinForms 양식 - 날짜 형식을 지정하는 방법은 무엇입니까?

나는 데이터베이스에서이를 수행하고 DateTime 대신 문자열을 전달할 수 있지만 해결 방법이며 해결책은 아닙니다.

답변

6

디자이너를 사용하여 입력란을 선택하고 속성 탭을 클릭 한 다음 (데이터 바인딩) - 고급을 선택하십시오. 여기에서

당신은

+0

와우, 어떻게 내가 그 표시되지 않은 날짜 시간 데이터 유형을 선택하고 선택적 등 단지 날짜 또는 시간을 제거 할 수 ...? – cdonner

6

Binding.Format 이벤트를 처리하여 날짜 형식을 지정할 수 있습니다. 그리고 그 대응 부분 Binding.Parse TextBox에서 입력을 구문 분석합니다.

예.

TextBox.DataBindings["Text"].Format += new ConvertEventHandler(FormatDateEventHandler); 
... 
private void FormatDateEventHandler (object sender, ConvertEventArgs e) 
{ 
    if (! Convert.IsDBNull (e.Value)) 
    { 
     e.Value = ((DateTime)e.Value).ToString ("d", CultureInfo.CurrentCulture); 
    } 
}