2011-01-28 13 views
69

मेरे पास इसमें सभी महीनों के साथ एक कॉम्बोबॉक्स है।एक महीने में दिनों की संख्या प्राप्त करना

मुझे जो जानने की आवश्यकता है वह चयनित महीने में दिनों की संख्या है।

var month = cmbMonth.SelectedIndex + 1; 
DateTime date = Convert.ToDateTime(month); 

तो यदि कोई उपयोगकर्ता जनवरी का चयन करता है, तो मुझे 31 को एक चर में सहेजने की आवश्यकता होती है। धन्यवाद।

उत्तर

170

आप DateTime.DaysInMonth हैं:

int days = DateTime.DaysInMonth(year, month); 

जाहिर है यह साल से भिन्न होता है, के रूप में कभी कभी फरवरी 28 दिन की है और कभी कभी 29. तुम हमेशा किसी खास वर्ष (छलांग या नहीं) यदि आप "ठीक" करना चाहते ले सकता है यह एक मूल्य या अन्य के लिए।

23

उपयोग System.DateTime.DaysInMonth, कोड नमूने से:

const int July = 7; 
const int Feb = 2; 

// daysInJuly gets 31. 
int daysInJuly = System.DateTime.DaysInMonth(2001, July); 

// daysInFeb gets 28 because the year 1998 was not a leap year. 
int daysInFeb = System.DateTime.DaysInMonth(1998, Feb); 

// daysInFebLeap gets 29 because the year 1996 was a leap year. 
int daysInFebLeap = System.DateTime.DaysInMonth(1996, Feb); 
-3
  • int days = DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month);


आप इस साल और वर्तमान महीने के दिनों को खोजना चाहते हैं तो यह सबसे अच्छा है

0
int days = DateTime.DaysInMonth(int year,int month); 

या

int days=System.Globalization.CultureInfo.CurrentCulture.Calendar.GetDaysInMonth(int year,int month); 

आप वर्ष और माह पारित करने के लिए int के रूप में तो महीने में दिनों वर्ष और माह

0

मैं इसे DateTimePicker चयनित माह और वर्ष से महीने में दिनों की गणना बनाया currespoting पर वापसी हो जाएगा है, और मैं, लेकिन डेटाटेमपिकर 1 में कोड को टेक्स्टबॉक्स में इस कोड के साथ

private void DateTimePicker1_ValueChanged(object sender, EventArgs e) 
{ 
    int s = System.DateTime.DaysInMonth(DateTimePicker1.Value.Date.Year, DateTimePicker1.Value.Date.Month); 

    TextBox1.Text = s.ToString(); 
} 
संबंधित मुद्दे