2015-09-30 112 views
0
string FeeId = grdvw.Rows[index].Cells[0].Text; 

這是正確的方式來檢索所選行中單元格的內容嗎?如果我使用這個,我沒有價值。所以,請建議最好的方法。從DataGridView獲取選定行的單元格的內容

+0

您使用的答案[標籤:的WinForms]或[標籤:ASP。淨]?相應地修改你的問題 – Abhishek

+0

am使用網站 – Vinay

+0

@Vinay:請發佈完整的代碼,以便問題可以被複制 – Abhishek

回答

1

是的,這是一個辦法做到這一點,你也可以不喜歡它:

string FeeId = grdvw.Rows[index].Cells[0].Value; 

另外,如果你想從您可以通過在DataGridView這樣遍歷所有行獲取值:

foreach (DataGridViewRow row in grdvw.Rows) 
{ 
    string column0 = row.Cells[0].Value; 
    string column1 = row.Cells[1].Value; 
    //More code here 
} 
1

我在嘗試時得到的值。下面是一個示例,其中我在運行時添加的行和列:

public partial class WebForm1 : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     DataTable dt = new DataTable(); 
     DataColumn dCol1 = new DataColumn("Col1", typeof(System.String)); 
     DataColumn dCol2 = new DataColumn("Col2", typeof(System.String)); 
     dt.Columns.Add(dCol1); 
     dt.Columns.Add(dCol2); 
     for (int i = 0; i < 2; i++) 
     { 
      DataRow row1 = dt.NewRow(); 
      row1["Col1"] = "One"; 
      row1["Col2"] = "Two"; 
      dt.Rows.Add(row1); 
     } 
     foreach (DataColumn col in dt.Columns) 
     { 
      BoundField bField = new BoundField(); 
      bField.DataField = col.ColumnName; 
      bField.HeaderText = col.ColumnName; 
      GridView1.Columns.Add(bField); 
     } 
     GridView1.DataSource = dt; 
     //Bind the datatable with the GridView. 
     GridView1.DataBind(); 
     string str = GridView1.Rows[0].Cells[0].Text; 
    } 
} 
+0

先生我正在使用網站..,如果我使用「.value」,它顯示錯誤 – Vinay

0
string FeeId = (grdvw.Rows[index].Cells[0].FindControl("lblfee") as Label).Text; 

如果我們用這樣我們得到

+0

請發佈有些東西對其他人也有用。 –

相關問題