2012-08-01 51 views
1

我正在爲我的項目使用ASP RadControls。我想知道如何根據財政年度設置MinDate和MaxDate。我嘗試下面的代碼,但我沒有得到如何設置最小值和最大值datepicker。請幫助我。如何在C#編碼中設置基於財政年度的RaddatePicker最短日期和最長日期?

 string finyear = ViewState["FIN_YR"].ToString();//viewstate["FIN_YR"]="1112" 
    string pr = finyear.Substring(0, 2);//pr="11" 
    string pr1 = "20"; 
    string year1 =pr1+pr;//year1="2011" 
    int firstyear = Convert.ToInt32(year1); 
    string pa = finyear.Substring(2, 2);//pa="12" 
    string year2 = pr1 + pa;//year2="2012" 
    int Secondyear = Convert.ToInt32(year2); 
    dtpRemitDate.MinDate = System.DateTime.Parse("firstyear/4/1"); 

我試過這樣但System.DateTime.Parse("int,int,int");只能接受。我怎樣才能將日期設置爲datepicker?

回答

4

首先,我會嘗試組成更少的字符串操作。它看起來像你只需要兩個:不要基於其餘

  • 解析分鐘一年一個隱含的「2000」基地
  • 解析最多一年一個隱含的「2000」基地

DateTimeint

string financialYearText = ViewState["FIN_YR"].ToString(); 
int minYear2Digits = int.Parse(financialYearText.Substring(0, 2)); 
int maxYear2Digits = int.Parse(financialYearText.Substring(2, 2)); 
dtpRemitDate.MinDate = new DateTime(minYear2Digits + 2000, 4, 1); 
dtpRemitDate.MaxDate = new DateTime(maxYear2Digits + 2000, 4, 1); 

這是假設它會總是基於2000年是 - 如果您有「舊」記錄,例如「8788」應該意味着1987年和1988年,你需要做更多的工作。

相關問題