[英]c# WPF DatePicker to Label Binding, to get a persons age
我的工作是将XAML中的标签Content绑定到DatePicker(这是一个人的出生日期)以获取年龄。 例如:日期选择器:2000.1.1标签:16.我该怎么做?
编辑
当DatePicker更改时,标签需要立即更改。
使用IValueConverter实现绑定标签,例如:
class BirthdateToAgeConverter : IValueConverter
{
public object Convert
(
object value,
Type targetType,
object parameter,
string language)
{
var birthdate = ((DateTime) value).Date;
var age = DateTime.Today.Year - birthdate.Year;
if (birthdate > DateTime.Today.AddYears(-age))
{
age--;
}
return age;
}
public object ConvertBack
(
object value,
Type targetType,
object parameter,
string language)
{
throw new NotImplementedException();
}
}
编辑:如果直接绑定到DatePicker,则需要在XAML中定义绑定路径。 您还可以在ViewModel上绑定到SzuletesiDatum。
<Label Content="{Binding ElementName=dtPicker, Path=SelectedDate ,Converter={StaticResource DTKC}}"
HorizontalAlignment="Left" Margin="356,94,0,0"
VerticalAlignment="Top"/>
<DatePicker x:Name="dtPicker"
SelectedDate="{Binding SzuletesiDatum}"
HorizontalAlignment="Left"
Margin="112,94,0,0"
VerticalAlignment="Top"/>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.