2014-03-29 2 views
3

C# (gridview)에서 선택한 행의 다음 행을 선택하는 방법이 있습니까? 내가 두 번째 행을 선택하면Gridview에서 선택된 행 +1?

예를 들어이 세 번째 행을 선택합니다

protected void ProjectsTBL_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    GridViewRow row = ProjectsTBL.SelectedRow; 
    Session["selectedrow"] = row; 
    Response.Redirect("ProjectDetails.aspx"); 
} 

Asp.net에서

+1

WPF? ASP.NET? WinForms? –

+0

죄송합니다 Asp.net 및 C# –

답변

-1
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) 
{ 
    if (e.RowIndex != -1) 
    { 
      int selIndex = e.RowIndex; 
      int newSelIndex = selIndex + 1; 
      DataGridView1.CurrentCell = DataGridView1.Rows[newSelIndex].Cells[0]; 
    } 
} 

내가이 샘플 코드를 사용해보십시오이 도움말

+0

'DataGridView'? 이것은'WinForms'을위한 것입니까? –

+0

DataGridView는 Ur DataGridView의 이름입니다. 그리드를 클릭하고 해당 이름의 속성에서 확인하십시오. Winform 용 Yup – Adii

+0

이것은 OP가 요청하는 컨트롤이 아닙니다. 그는 ASP.Net'GridView'에 대해 묻고 있습니다 ... –

1

희망이 시도 :

protected void ProjectsTBL_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    // Get index of the currently selected row: 
    int rowIndex = ProjectsTBL.SelectedIndex; 

    // Verify the row exists and it's not the last row: 
    if (rowIndex < 0 || rowIndex >= ProjectsTBL.Rows.Count - 1) 
     return; 

    // Get the next row: 
    Session["selectedrow"] = ProjectsTBL.Rows[rowIndex + 1]; 
    Response.Redirect("ProjectDetails.aspx"); 
} 
+0

+1 : 또한 그 행이 있는지 확인하십시오. – naveen

0
protected void ProjectsTBL_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    GridViewRow row = ProjectsTBL.SelectedRow; 
    if (row.RowIndex >= ProjectsTBL.Rows.Count - 1) { return; } 

    GridViewRow selectedRow = ProjectsTBL.Rows[row.RowIndex + 1]; 

    row.RowState = DataControlRowState.Normal; 
    selectedRow.RowState = DataControlRowState.Selected; 

    Session["selectedrow"] = selectedRow; 
    Response.Redirect("ProjectDetails.aspx"); 
} 
관련 문제