Автоматически получить полную дату дд / мм / гггг из ддмм - PullRequest
0 голосов
/ 06 января 2020

Наш формат даты: ДД / ММ / ГГГГ. Если пользователь вводит только дату и месяц, приложение должно автоматически выбрать текущий год. Например: если пользователь вводит 0104, то приложение должно получить 01/04/2020. Он должен получать год автоматически в соответствии с датой

Если пользователь выбирает Date для DatePicker ddmm (ex.0401), тогда он должен автоматически получать дату в формате dd / mm / yyyy (ex.04 / 01/2020). )

<DatePicker
            Grid.Column="3"
            x:Name="FinancialYear"
            HorizontalAlignment="Left" 
            Margin="74,317,0,0"
            VerticalAlignment="Top"
            SelectedDate="{Binding FinancialYear,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged,StringFormat='dd/MM/yyyy',ValidatesOnDataErrors=False}"
            Uid="none" Width="151"
            PreviewKeyDown="FinancialYear_PreviewKeyDown">
</DatePicker>

1 Ответ

0 голосов
/ 07 января 2020

Попробуйте установить StringFormat привязки к свойству DatePickerTextBox Text в любой формат, который вы хотите. Это прекрасно работает для меня:

<DatePicker x:Name="FinancialYear">
    <DatePicker.Resources>
        <Style TargetType="{x:Type DatePickerTextBox}">
            <Setter Property="Control.Template">
                <Setter.Value>
                    <ControlTemplate>
                        <TextBox x:Name="PART_TextBox" Text="{Binding Path=SelectedDate, StringFormat='dd MM', 
                                    RelativeSource={RelativeSource AncestorType={x:Type DatePicker}}}" />
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </DatePicker.Resources>
</DatePicker>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...