2010-12-17 4 views
1
 
i am working on visual stdio 2008 and my database is in sql server 2005 
MY table has three columns 
1. SenderName 
2. RecieverName 
3. Message 

i have displayed this table in GridView and add a button named as Reply 
so my grid view look's some what like this 

SenderName|RecieverName| MessAge|REPLY BUTTON 

now this what i want to do 
when Button is Clicked in My gridView i need to get data of that specific row 
i.e Sender's NAme so that i can Reply him/her ? 

can any one help???? 
+1

"내 표는 두 개의 열이 있습니다 : 1 ... 2 ... 3 ... "=) 나는 단지 헤헤가 재미 있다고 느낀다. – BeemerGuy

답변

2

여기 예제입니다 :

마크 업 :

<asp:GridView 
    runat="server" 
    ID="gvEmails" 
    OnSelectedIndexChanged="gvEmails_SelectedIndexChanged">    
    <Columns> 
     <asp:ButtonField CommandName="Select" ButtonType="Button" Text="Send" /> 
    </Columns> 
</asp:GridView> 

숨김 코드 :

protected void Page_Load(object sender, EventArgs e) 
{ 
    DataTable dt = new DataTable(); 
    dt.Columns.Add("SenderName"); 
    dt.Columns.Add("ReceiverName"); 
    dt.Columns.Add("Message"); 

    DataRow dr; 

    dr = dt.NewRow(); 
    dr["SenderName"] = "John Doe"; 
    dr["ReceiverName"] = "Jane Doe"; 
    dr["Message"] = "Hi, Jane."; 
    dt.Rows.Add(dr); 

    dr = dt.NewRow(); 
    dr["SenderName"] = "Michelle Smith"; 
    dr["ReceiverName"] = "Mike Smith"; 
    dr["Message"] = "Yo, Mike."; 
    dt.Rows.Add(dr); 

    gvEmails.DataSource = dt; 
    gvEmails.DataBind(); 
} 

protected void gvEmails_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    GridViewRow row = gvEmails.SelectedRow; 

    Response.Write("Send email to " + row.Cells[1].Text); 
} 
+0

Thanxx Bro 그것은 정말로 도움이되었다. –

+0

@ user404305 - 문제 없음. 나는 네 이름이 맞았 으면 좋겠다. =) – BeemerGuy

0

이 작업에는 여러 가지 방법이 있습니다. 가장 쉬운 방법은 하나의 값만 필요하면 답장 버튼의 CommandArgument에 값을 바인딩하는 것입니다. 그런 다음 단추에 OnClick 핸들러를 추가하십시오. 그런 다음 OnClick 메서드에서 CommandArgument에서 이름을 가져올 수 있습니다.

행에서 하나 이상의 값이 필요한 경우 조금 더 작업해야합니다. GridView에서 이벤트 처리기를 설정하여 index changing의 이벤트를 캡처 할 수 있습니다. 그러면 NewSelectedIndex가있는 이벤트 인수가 제공됩니다. 그러면 어떤 행이 선택되었는지 알려줍니다. 데이터가 GridView에 바인딩되는 방법에 따라 데이터에 다시 액세스하여 필요한 값을 가져 오거나 GridView에서 열을 DataKey으로 설정하여 이러한 방식으로 액세스 할 수 있습니다.

1

속성에 선택된 인덱스 변경 기능이 있습니다.

Captuer 선택된 색인을 선택하고 선택한 색인의 셀 값을 가져옵니다.

그럼 원하는대로 계속하십시오.