2012-03-23 6 views
0

今日の日付を使用して、テキストボックス値を先月の最終日(前月の終わりまで)に設定するにはどうすればよいですか?例えばテキストボックスの値を先月に設定します

今日は23/03/2012テキストボックスの値であるならば、テキストボックスの値は、31/03でなければなりません来月来る場合29/02/2012 も、日付は2012年12月4日である必要があります/ 2012およびその

に感謝

+0

可能な複製[前月の最初と最後の日をc#で取得](http://stackoverflow.com/questions/591752/get-the-previous-months-first-and-last-day-dates- in-c-sharp) – itsmatt

+0

Ha ...この質問の中にちょうど4つの重複があります。好きなのを選びな。 –

答えて

2

は、現在の月の最初の日を取り、1を引く:

DateTime value = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1).AddDays(-1); 
0

使用DateTime.DaysInMonthを達成するためにこれは:

var daysInMonth = DateTime.DaysInMonth(dt.Year, dt.Month - 1); 
var lastDayInMonth = new DateTime(dt.Year, dt.Month - 1, daysInMonth); 
textBox1.Text = lastDayInMonth.ToString("dd/MM/yyyy"); 
0

月の最初の日を取得し、1日を減算します。 C#ので

DateTime lastDayOfThePreviousMonth = dateSelected.AddDays(-dateSelected.Day); 
+0

好奇心が強い..現在の日が1の場合はどうなりますか?その後、-0日を追加しますか? –

+0

@ChrisGesslerあなたは正しいです、日から1つを引く必要はありません。私は更新しました。 – daryal

1
DateTime date = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1).AddDays(-1); 
textBox1.Text = date.ToShortDateString(); 
+0

お返事ありがとうございます+1 – Zaki

0

DateTime dt = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1).AddDays(-1); 

その後.ToString()を呼び出して、あなたが好きな形式で渡します。

関連する問題