2017-08-17 51 views
0

我正在使用Web表單從sql數據庫中提取數據,填充數據表並使用該數據表填充Gridview。使用Gridview的值

爲當按下 搜索按鈕填充GridView控件執行SQL查詢代碼然後設置數據源到數據表(GT1)

GT1.Load(SCDR); 
      EntryGrid.ShowHeaderWhenEmpty = true; 
      EntryGrid.DataSource = GT1; 
      EntryGrid.DataBind(); 
      EntryGrid.EditIndex = 0; 
      EntryGrid.DataBind(); 

我原本只打算使用GridView控件來填充一系列變量並使用它們生成Sql查詢,但EntryGrid.Rows[0].Cells[2].Text會生成一個空字符串。
row.Cells[4].Text returns nothing in GridView1_SelectedIndexChanged?談論使用FindControl(「控制ID」),但我只是更加困惑看着這個。我如何找到控件ID,以及我需要做什麼才能將gridview中特定單元格的值轉換爲字符串變量?

GridView控件是由下面的代碼

DataTable GT1 = new DataTable(); 
protected void Button1_Click(object sender, EventArgs e) 
    { 

     string SqlQuery1 = sql.Replace("LASTNAME_", LastnameBox.Text); 
     SqlQuery1 = SqlQuery1.Replace("LAST4_", PAsswordBox.Text); 




     SqlConnection Conn1 = new SqlConnection(DC1.DbConn); 
     Conn1.Open(); 
     SqlCommand SearchCommand = new SqlCommand(SqlQuery1, Conn1); 
     SqlDataReader SCDR = SearchCommand.ExecuteReader(); 


     GT1.Load(SCDR); 
     EntryGrid.ShowHeaderWhenEmpty = true; 
     EntryGrid.DataSource = GT1; 
     EntryGrid.DataBind(); 
     EntryGrid.EditIndex = 0; 
     EntryGrid.DataBind(); 
} 

回答

0

控制ID填充是您在模板列的項中的每個設置ID。以下是使用FindControl從標籤獲取信息並將其存儲在VarFromGrid中的示例。該行由RowSelected獲取。不知道你想如何獲得這一行,但這是一種方法。

ASPX代碼:

<asp:Label ID="LabelGridViewBankName" runat="server" Text="something"></asp:Label> 

後面的代碼:

GridViewRow row = GridView1.SelectedRow; 
string VarFromGrid = row.Cells[4].FindControl('LabelGridViewBankName').Text; 

編輯:

您可以使用一個GridViewRow搶行,然後從中獲取數據如下圖所示。你不應該需要查找控件。

GridViewRow row = (GridViewRow)EntryGrid.SelectedItems[0]; 
string something = row.Cells[0].Text; 

只要記住,以確保網格行不爲空,否則你會得到一個空的異常。並且一旦完成就關閉連接字符串。我仍然返回一個空字符串,在調試模式下看看你的dataTable,看看數據是如何存儲的。

+0

是'LabelGridViewBankName'應該是列上的標籤? GridView的列動態填充它作爲DataSource使用的數據表,並且DataTable在添加DataList時添加列DataTable.Load(SqlDataReader) –

+0

我最近的一次嘗試讓我得到了一個錯誤 'Control'沒有包含「文本」的定義,並且沒有可以找到接受第一個參數類型「控制」的擴展方法「文本」(您是否缺少使用指令或程序集引用?) –

+0

您可以發佈一些更多的代碼。就像你的網格正在創建和你的列一樣? – Pintang

相關問題