2013-10-15 45 views
-5

嗨如何解決這個問題?我試圖錯誤:無法將方法組'CopyToDataTable'轉換爲非委託類型'System.Data.DataTable'。你打算採用這種方法嗎?

protected void RowDataBound(object sender, System.Web.UI.WebControls.GridViewRowEventArgse) 
{ 
    if (e.Row.RowType == DataControlRowType.DataRow) { 
    //If str = "0" Then 
    string QNo = ""; 
    QNo = e.Row.Cells[0].Text; 
     DataTable dtChoice_2; 
     dtChoice_2 = dtChoice_2.Select("QuestionID = '" + QNo + "'").CopyToDataTable; 
     RadioButtonList RadioBtnList = (RadioButtonList)e.Row.FindControl("RdChoices"); 
     RadioBtnList.DataSource = dtChoice_2; 
    RadioBtnList.DataValueField = "ChoiceID"; 
    RadioBtnList.DataTextField = "ChoiceDescription"; 
    RadioBtnList.DataBind(); 
    } 
} 
+1

其中'dtChoice'定義我的RowDataBound事件中執行呢? –

+1

你在哪裏宣佈並初始化'dtChoice'? –

+0

變量'dtChoice'沒有設置爲任何值,甚至沒有在該方法中定義。它是否被聲明爲aspx.cs類的字段? –

回答

0

CopyToDataTable是一個方法,你需要將parenthesys添加到方法名

dtChoice_2 = dtChoice.Select("QuestionID = '" + QNo + "'").CopyToDataTable(); 
                      ^^^ 
+0

我複製並粘貼它,它又給我一個錯誤:錯誤:使用未分配的局部變量'dtChoice_2' – user1932119

+0

顯然'dtChoice'是要複製的行的來源,而不是dtChoice_2。該變量由CopyToDataTable()初始化。 – Steve

+0

謝謝Steve:D – user1932119

相關問題