DateTimePicker에 빈 문자열을 표시하려면 어떻게해야합니까?
DateTimePicker
기본값이 아무것도없는, 즉 날짜가없는를 표시하고 싶습니다 .
예를 들어 작업에 대한 시작 날짜 dtTaskStart
와 dtTaskEnd
종료 날짜가 있지만 종료 날짜를 알 수없고 처음에 채워지지 않습니다.
yyyy-MM-dd
두 컨트롤 에 대한 사용자 지정 형식을 지정했습니다 .
값을로 설정 null
하거나 런타임에 빈 문자열로 인해 오류가 발생하므로 어떻게 수행 할 수 있습니까?
이 필드의 활성화를 제어하기 위해 확인란을 사용하는 것을 고려했지만 여전히 초기 값을 표시하는 문제가 있습니다.
편집 :
틀림없이 DateTimePicker Null Value (.NET) 질문의 중복 이지만 내 문제에 대해 찾은 해결책은 해당 질문에 대한 해결책이 아니므로 다른 사람들이 찾을 수 있도록 여기에 남아 있어야한다고 생각합니다 ..
다음과 같이 속성을 설정하십시오.
사용자가 "삭제 버튼"또는 "키 삭제"를 누르면
dtpData.CustomFormat = " " 'An empty SPACE
dtpData.Format = DateTimePickerFormat.Custom
에 DateTimePicker1_ValueChanged
이벤트 할 일
dtpData.CustomFormat = "dd/MM/yyyy hh:mm:ss"
다른 코드에서 값을 무시해야하는지 여부를 나타내는 플래그로 CustomFormat
확인란 을 사용하여 속성 을 사용하여 값을 난독 화합니다 cbEnableEndDate
.
If dateTaskEnd > Date.FromOADate(0) Then
dtTaskEnd.Format = DateTimePickerFormat.Custom
dtTaskEnd.CustomFormat = "yyyy-MM-dd"
dtTaskEnd.Value = dateTaskEnd
dtTaskEnd.Enabled = True
cbEnableEndDate.Checked = True
Else
dtTaskEnd.Format = DateTimePickerFormat.Custom
dtTaskEnd.CustomFormat = " "
dtTaskEnd.Value = Date.FromOADate(0)
dtTaskEnd.Enabled = False
cbEnableEndDate.Checked = False
End If
이것은 C #에서 나를 위해 일했습니다.
if (enableEndDateCheckBox.Checked == true)
{
endDateDateTimePicker.Enabled = true;
endDateDateTimePicker.Format = DateTimePickerFormat.Short;
}
else
{
endDateDateTimePicker.Enabled = false;
endDateDateTimePicker.Format = DateTimePickerFormat.Custom;
endDateDateTimePicker.CustomFormat = " ";
}
좋은 사람!
누구든지 양식로드 이벤트 중에 datetimepicker 컨트롤을 공백으로 설정하는 데 문제가있는 경우 필요에 따라 현재 날짜를 표시합니다. 예는 다음과 같습니다.
확인 CustomFormat = " "
두 방법에서 동일 공간의 수 (적어도 하나의 공간)이
Private Sub setDateTimePickerBlank(ByVal dateTimePicker As DateTimePicker)
dateTimePicker.Visible = True
dateTimePicker.Format = DateTimePickerFormat.Custom
dateTimePicker.CustomFormat = " "
End Sub
Private Sub dateTimePicker_MouseHover(ByVal sender As Object, ByVal e As
System.EventArgs) Handles dateTimePicker.MouseHover
Dim dateTimePicker As DateTimePicker = CType(sender, DateTimePicker)
If dateTimePicker.Text = " " Then
dateTimePicker.Text = Format(DateTime.Now, "MM/dd/yyyy")
End If
End Sub
When I want to display an empty date value I do this
if (sStrDate != "")
{
dateCreated.Value = DateTime.Parse(sStrDate);
}
else
{
dateCreated.CustomFormat = " ";
dateCreated.Format = DateTimePickerFormat.Custom;
}
Then when the user clicks on the control I have this:
private void dateControl_MouseDown(object sender, MouseEventArgs e)
{
((DateTimePicker)sender).Format = DateTimePickerFormat.Long;
}
This allows you to display and use an empty date value, but still allow the user to be able to change the date to something when they wish.
Keep in mind that sStrDate has already been validated as a valid date string.
The basic concept is the same told by others. But its easier to implement this way when you have multiple dateTimePicker.
dateTimePicker1.Value = DateTime.Now;
dateTimePicker1.ValueChanged += new System.EventHandler(this.Dtp_ValueChanged);
dateTimePicker1.ShowCheckBox=true;
dateTimePicker1.Checked=false;
dateTimePicker2.Value = DateTime.Now;
dateTimePicker2.ValueChanged += new System.EventHandler(this.Dtp_ValueChanged);
dateTimePicker2.ShowCheckBox=true;
dateTimePicker2.Checked=false;
the value changed event function
void Dtp_ValueChanged(object sender, EventArgs e)
{
if(((DateTimePicker)sender).ShowCheckBox==true)
{
if(((DateTimePicker)sender).Checked==false)
{
((DateTimePicker)sender).CustomFormat = " ";
((DateTimePicker)sender).Format = DateTimePickerFormat.Custom;
}
else
{
((DateTimePicker)sender).Format = DateTimePickerFormat.Short;
}
}
else
{
((DateTimePicker)sender).Format = DateTimePickerFormat.Short;
}
}
참고URL : https://stackoverflow.com/questions/846395/how-can-i-make-a-datetimepicker-display-an-empty-string
'Programing' 카테고리의 다른 글
RxJS 맵 연산자 (각도)에서 오류를 발생시키는 방법 (0) | 2020.12.12 |
---|---|
PL / SQL 블록에서 SELECT 문을 출력 할 수 있습니까? (0) | 2020.12.12 |
Rails 프로젝트를위한 gem Forking (0) | 2020.12.12 |
$ (window) .height () 대 $ (document) .height (0) | 2020.12.11 |
asp.net MVC 4 및 Razor보기에서 경로의 이미지를 표시하는 방법은 무엇입니까? (0) | 2020.12.11 |