Не могу разобраться с get и set(если всё дело конечно в этом). Проблема с последней строкой в этой части программы. Выдает ошибку CS0200 - "Невозможно присвоить значение свойству или индексатору "DateTime.Year" - доступ только для чтения"
Пытаюсь присвоить значения, выбранные в выпадающем списке.
Само задание звучит так:
Разработайте и реализуйте приложение WPF, которое:
- содержит три выпадающих списка, с помощью которых можно выбрать год, месяц и день
- количество дней в месяце определяется только после выбора года и месяца, до этого, выпадающий список с выбором дня должен быть не активен
- после выбора всех трёх параметров, должно появляться сообщение с информацией о том, сколько лет, месяцев и дней прошло с выбранной даты до текущего момента
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
namespace lab4 { public partial class MainWindow : Window { string a, b, c; string aa, bb, cc; DateTime now = DateTime.Now; DateTime dt { get; set; } public MainWindow() { InitializeComponent(); } private void Year_SelectionChanged(object sender, SelectionChangedEventArgs e) { a = Year.Text; DateTime dt = new DateTime(); dt.ToString(); dt.Year = a; |
@Marina_Rar Все правильно объект DateTime уже создан и само свойство защищено от перезаписи, но Вы можете легко создать новый объект с нужным Вам Годом, к примеру:
1 2 3 4 5 6 7 |
a = Year.Text; int year = Int32.Parse(a); DateTime dt = new DateTime(); dt.ToString(); DateTime dt2 = new DateTime(year, dt.Month, dt.Day); Console.Write(dt2.ToString()); |
Теперь у Вас будет dt2 с нужным Вам годом.