여기 내 ASP.NET 코드 단편입니다.'System.Web.UI.HtmlControls.HtmlForm'형식의 개체를 'System.Web.UI.WebControls.GridViewRow'형식으로 캐스팅 할 수 없습니다.
GridView 행을 선택하고 세션 변수에 선택한 행 항목을 추가하려고합니다.
// ======================== MyGridView ========================
protected void GridView_MyGridView_SelectedIndexChanged(object sender, EventArgs e)
{
// Get Selected Row Items
Items myitems = new Items();
Session["Items"] = myitems;
((Invoices)Session["Items"]).ItemNo = int.Parse(((GridViewRow)(((WebControl)(sender)).Parent.Parent)).Cells[0].Text);
}
GridView 열과 함께 제공되는 클릭 가능한 선택 버튼을 사용하고 싶지 않습니다.
다음 코드에 의해 처리 : 이제
protected void GridView_MyGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes["onmouseover"] = "this.style.cursor='pointer';this.style.textDecoration='underline';";
e.Row.Attributes["onmouseout"] = "this.style.textDecoration='none';";
e.Row.ToolTip = "Click to Select a Visit.";
e.Row.Attributes["onclick"] = Page.ClientScript.GetPostBackClientHyperlink(sender as GridView, "SELECT$" + e.Row.RowIndex);
}
}
, 나는이 프로그램을 실행할 때, 나는 즉시 다음과 같은 오류를 얻을 gridview에 선택된 행의 변경과 같은 :
의 개체를 캐스팅 할 수 없습니다 'System.Web.UI.HtmlControls.HtmlForm'을 입력하여 'System.Web.UI.WebControls.GridViewRow'를 입력하십시오.
의견을 보내주십시오.
gridview는 데이터를 포함합니다. GridView 템플릿에서 select 열을 사용하는 경우에만 제안 된 코드가 작동합니다. 각 GridView 행 앞에있는이 선택 단추를 제거하고 e.row.Attributes를 사용하여 GridView 행을 선택하면됩니다. – CyborgHead
코드를 수정 했으므로 이제 제안 된 코드를 사용하여 작동합니다. – CyborgHead