Как изменить дату по умолчанию в DatePicker wpf

148
22 июня 2019, 19:40

подскажите пожалуйста, как убрать дату DatePicker wpf по умолчанию которая: 01.01.0001 и установить собственную дату по умолчанию допустим 01.01.2000. Спасибо.

Answer 1

Предположим у нас есть стандартный класс нашего объекта:

public class ItemViewModel
{
    public string Name { get; set; }
    public DateTime Date { get; set; }
}

И в основной ViewModel есть привязанная коллекция:

public ObservableCollection<ItemViewModel> Items { get; set; }

В разметке стандартный DataGrid с автогенерацией:

<DataGrid ItemsSource="{Binding Items}"/>

Вот если у вас такой же вариант, то тут достаточно переписать свойство с датой, добавив ему значение по умолчанию:

public DateTime Date { get; set; } = new DateTime(2020,1,1);

Другой вариант, это установить значение по умолчанию через XAML.
Для этого у привязок существуют свойства FallbackValue и TargetNullValue.

Сделаем простенькую разметку:

<DataGrid ItemsSource="{Binding Items}" AutoGenerateColumns="False">
    <DataGrid.Columns>
        <DataGridTextColumn Header="Имя" Binding="{Binding Name}"/>
        <DataGridTextColumn Header="Дата" Binding="{Binding Data, FallbackValue='2019.01.02'}"/>
    </DataGrid.Columns>
</DataGrid>

Результат получим примерно такой:

Answer 2

https://docs.microsoft.com/en-us/dotnet/api/system.windows.controls.datepicker.text?redirectedfrom=MSDN&view=netframework-4.7.2#System_Windows_Controls_DatePicker_Text

<my:DatePicker SelectedDate="{x:Static sys:DateTime.Now}"/> // поменяйте на свою дату
// надо добавить ссылку
xmlns:sys="clr-namespace:System;assembly=mscorlib"
// или так
public MainWindow()
{
    InitializeComponent();
    dpDate.SelectedDate = DateTime.Today;            
}
READ ALSO
Unable to find an entry point named &#39;glCreateShader&#39; in DLL &#39;opengl32.dll&#39;

Unable to find an entry point named 'glCreateShader' in DLL 'opengl32.dll'

Пытаюсь загрузить свой ШейдерИспользую Tao

131
Как получить entryid письма в ews

Как получить entryid письма в ews

Я получаю сообщение из публичной папки и хочу узнать его entryid (как в интерропе):

128
Проблема с IEnumerator

Проблема с IEnumerator

есть своя реализация dictionary:

143