Wpis z mikrobloga

if (prevMonth.Equals(12))
{
int a = 1;
MessageBox.Show(a.ToString());
int nowYear = now.AddYears(-1).Year;
Rok.Items.Add(new ComboBoxItem(nowYear.ToString("yy"), nowYear.ToString()));

Mirki z działu #programowanie w #csharp. Jak zrobić, żeby w combobox ta zmienna nowYear.ToString("yy") nie wyświetlała yy a dwie ostatnie cyfry roku?

takie coś: Rok.Items.Add(new ComboBoxItem(now.ToString("yy"), now.ToString("yyy"))); działa i wyświetla się 2015 w combobox a wartośc to 15. To powyżej nie działa.

Poczatek kodu:

DateTime now = DateTime.Now;

DateTime thisMonth = new DateTime(now.Year, now.Month, 1);
int prevMonth = now.AddMonths(-1).Month;
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@ogrod87: nowYear to int. równie dobrze mógłbym mu napisać żeby sobie char'y wyciągnął albo zrobił nowYear%1000. efekt ten sam, a gość i tak zostanie leniwą bułą, która nie potrafi znaleźć rozwiązania prostego problemu
  • Odpowiedz
@ilmash: ja już dzis od 4 godzin szukam różnych rozwiązań. Z samym odczytem daty męczyłem sie, wiec niemów mi ze leniwy jestem. Napisałem na wykopie bo już nie miałem siły szukać. Nie jestem programistą, a piszę, żeby sobie i kolegom życie w pracy ułatwić. I zanim napisaliście już rozwiązałem problem: Rok.Items.Add(new ComboBoxItem(nowYear.ToString().Substring(2, 2).ToString(), nowYear.ToString())); działa jak chciałem.

Tak czy siak dziękuję wszystkim.
  • Odpowiedz
@zerthimon: cóż, ja 3 lata po Tobie i takie głupoty pamiętam.

masz tam zadeklarowane, że newYear to int, więc nic nie stoi na przeszkodzie zrobić (newYear%1000).ToString();
osobiście nie jestem zwolennikiem String.Format bo tak rzadko trafiam na jego użycie, że sięganie za każdym razem do dokumentacji jest co najmniej niepraktyczne
  • Odpowiedz