6

在我的 wpf 应用程序中,在 CustomView 窗口中,以下是我声明的属性,

private DateTime starttime 
    {
        get
        {
            return DateTime.Parse(StartTimeText.Text); 
        }
        set
        {
            StartTimeText.Text = value.ToString();
            OnPropertyChanged("starttime");
        } 
    }

    private DateTime stoptime
    {
        get
        {
            return DateTime.Parse(StopTimeText.Text);
        }
        set
        {
            StopTimeText.Text = value.ToString();
            OnPropertyChanged("stoptime");
        }
    }

protected virtual void OnPropertyChanged(String time)
    {
        if (System.String.IsNullOrEmpty(time))
        {
            return;
        }
        if (PropertyChanged != null)
        {
            PropertyChanged(this, new PropertyChangedEventArgs(time));
        }
    }

public event PropertyChangedEventHandler PropertyChanged;

在 xaml 中,

<DatePicker x:Name="StartTimeText" 
            SelectedDate="{Binding Path=starttime}"  
            BorderThickness="0" 
            Background="Yellow"
            Width="100"/>

<DatePicker x:Name="StopTimeText" 
            SelectedDate="{Binding Path=stoptime, Mode=TwoWay}" 
            BorderThickness="0" 
            Background="Yellow"
            Width="60"/>

通过这种方式,我在开始时间和停止时间控件中获得了日期。但我想要“hh:mm tt”格式的时间。DateTimePicker 控件在 WPF 工具箱中不可用。所以要以指定格式而不是日期获取时间,我该怎么办?请建议。

4

1 回答 1

10

尝试使用http://wpftoolkit.codeplex.com/documentation

参考以下命名空间

xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit" 

接着

<xctk:DateTimePicker x:Name="dtpStartTime"  
                     Format="Custom" 
                     FormatString="HH:mm tt" 
                     Margin="5"/>
于 2013-07-12T07:35:13.983 回答