Well I strangely enough never used a grid view in the kind of stuff I work on. But I can tell you right now that you are receiving this error "cannot implicitly convert system.web.ui.webcontrol.gridview to system.web.ui.webcontrol.gridviewrow" because you will never be able to convert a GridView to a GridViewRow "GridViewRow gridrow = (GridViewRow)(chk.parent);".
Something like this would have to be done instead (based on solution 1 code)
protected void CheckBox2_CheckedChanged1(Object sender, EventArgs e)
{
CheckBox chk = (CheckBox)sender;
GridViewRow gridrow = ((GridView)(chk.Parent)).Rows[rowNum];
if (chk.Checked)
{
Button btn = (Button)(gridrow.FindControl("Button6"));
btn.Enabled = true;
}
else
{
Button btn = (Button)(gridrow.FindControl("Button6"));
btn.Enabled = false;
}
}
Note this line
GridViewRow gridrow = ((GridView)(chk.Parent)).Rows[rowNum];