2016-02-24 43 views
0

我似乎無法將數據從我的gridview傳遞到行選擇外的gridview之外的文本框。這個事件似乎在發射,但是文本框總是填滿了& nbsp ;.我無法弄清楚爲什麼會發生這種情況,因爲gridview中沒有任何單元格是空白的。我一直在研究這個問題幾天,在這個網站和其他網站上,沒有運氣。這裏是一塊我aspx.cs的:將gridview行數據傳遞給gridview行上的文本框

protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    txtBLName.Text = GridView1.Rows[GridView1.SelectedIndex].Cells[1].Text; 
} 

這裏是我的GridView控件代碼:

<asp:GridView ID="GridView1" 
    runat="server" 
    AutoGenerateColumns="False" 
    onselectedindexchanged="GridView1_SelectedIndexChanged" > 
    <Columns> 
     <asp:CommandField ShowSelectButton="true" SelectText="Edit" /> 
     <asp:BoundField DataField="LastName" HeaderText="Last Name" SortExpression="LastName"/> 
    </Columns> 
</asp:GridView> 

是否有人可以幫忙嗎?謝謝!

+0

調試這個'GridView1.Rows [GridView1.SelectedIndex] .Cells [1]'兄弟。 – JCM

回答

0

它的工作

ASP代碼

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
<asp:GridView ID="GridView2" 
runat="server" 
AutoGenerateColumns="False" 
onselectedindexchanged="GridView2_SelectedIndexChanged" > 
<Columns> 
    <asp:CommandField ShowSelectButton="true" SelectText="Edit" /> 
    <asp:BoundField DataField="LastName" HeaderText="Last Name" SortExpression="LastName"/> 
</Columns> 

C#代碼

protected void Page_Load(object sender, EventArgs e) 
{ 

    DataTable oDT = new DataTable(); 

    oDT.Columns.Add("edit",typeof(string)); 
    oDT.Columns.Add("LastName", typeof(string)); 

    oDT.Rows.Add("ad", "1212121"); 
    oDT.Rows.Add("aad", "1asdasd212121"); 

    GridView2.DataSource = oDT; 
    GridView2.DataBind();  

} 

protected void GridView2_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    GridViewRow row = GridView2.SelectedRow; 
    TextBox1.Text = row.Cells[1].Text; 
} 

RESULT

enter image description here

+0

獲得與以前相同的結果 –

+0

@BudFox請嘗試'OnSelectedIndexChanged' – CMedina

+0

即不工作 –

相關問題