2010-07-22 5 views
2

간단한 날짜가있는 FormView 내에 포함 된 TextBox에서 값을 찾아야합니다. 내가 어떻게 같은 형식에서 값을 넣어하는 아무 생각이 없다,FormView의 TextBox에서 DateTime 값 가져 오기

CS0030: Cannot convert type 'System.Web.UI.Control' to 'System.DateTime' 

그리고 :

DateTime LastPayDate = (DateTime)FormView1.FindControl("user_last_payment_date"); 

가 나는 오류가 발생합니다. 내 머리카락을 끌어 당기고 도움을 많이 받겠 지요.

감사

+0

은 당신의 오류가 해결? –

답변

2
//If you really need to find the textbox 
    TextBox dateTextBox = 
      FormView1.FindControl("user_last_payment_date") as TextBox; 

    if(dateTextBox == null) 
    { 
     //could not locate text box 
     //throw exception? 
    } 

    DateTime date = DateTime.MinValue; 

    bool parseResult = DateTime.TryParse(dateTextBox.Text, out date); 

    if(parseResult) 
    { 
     //parse was successful, continue 
    } 
1

나는,이 컴파일 된 것을 잘 모르겠지만, 단서

DateTime LastPayDate = DateTime.Parse((TextBox)FormView1.FindControl("user_last_payment_date")).Text); 
2

직접 날짜 시간 제어로 변환하려고하기 때문에 오류는 코드가 당신에게 줄 것이다 그래서 당신의 오류를 해결하려면 텍스트 상자 컨트롤에서 컨트롤을 변환하여돌아갑니다

DateTime LastPayDate = Convert.ToDateTime( 
         ((System.Web.UI.WebControls.TextBox) 
         FormView1.FindControl("user_last_payment_date")).Text); 
2

FindControl 아래에 주어진 것보다하는 날짜에 텍스트를 변환해야, 컨트롤 내용이 아닙니다.

TextBox textBox = (TextBox)FormView1.FindControl("user_last_payment_date"); 
DateTime LastPayDate = DateTime.Parse(textBox.Text);