2009-11-11 1 views
0

내가 지금 나와 함께 부담 해주십시오에서 새로운 오전을 쿼리하지 않고있는 gridview에서 데이터를 얻을 그래서 나는 "선택"링크를 클릭하면 gridview의 각 행에서 데이터는 웹 페이지의 다른 레이블/텍스트 상자로 전송됩니다.내가 일할 수있는 다음 코드를 얻기 위해 관리해야</p> <p>... 데이터베이스

지금까지 그렇게 좋은 것은 내가 클릭 그 때마다이 데이터에 대한 데이터베이스에 가서 검사 ...을 선택하고 내가 것으로 기대했다 몇 초간의 지연 ... 이있다 데이터는 그리드 위에 이미 표시되어 있기 때문에 데이터베이스를 다시 쿼리하지 않고 단순히 "선택"하여 다른 레이블/텍스트 상자에 사용됩니다.

이것이 가능합니까? 미리 감사드립니다.

Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) 
    Label1.Text = GridView2.SelectedRow.Cells(8).Text 
    Label2.Text = GridView2.SelectedRow.Cells(9).Text 
    TextBox1.Text = GridView2.SelectedRow.Cells(7).Text 
End Sub 

답변

0

모든 포스트 백에 데이터 바인딩 하시겠습니까? 그것이 재 쿼리의 원인 중 하나입니다.

+0

무슨 뜻인지 확실하지 않습니다 ... 죄송 합니다만, 제가 말씀 드렸듯이, 저는 이것에 대해 새로운 것입니다 : 무엇을 의미합니까? 모든 포스트 백에서 데이터 바인딩을 중단하는 방법은 무엇입니까? – frank2009

0

그리드에 바인딩하는 시점에서이 코드를 사용할 수 있습니다.

If Not IsPostBack Then 
    Grid.DataBind() 
End If 

한 번만 때 페이지가 처음로드를 그리드를 바인딩이 방법.

희망이 도움이됩니다.

+0

내 사과,하지만 당신이 언급 한 코드를 어디에 써야할지 모르겠다. 힌트를 줄 수 있겠 니? – frank2009

+0

코드를 코드에서 페이지로드 이벤트에 삽입하십시오. – Chris

+0

안녕하세요, 이것은 내 페이지에 넣은 코드입니다. 아무런 오류가 없으므로 "선택"링크를 클릭 할 때 여전히 포스트 백을하고 있습니다. 그 밖의 다른 것이 있습니까? 당신의 응답을 주셔서 감사합니다 는 서브를 Page_Load 보호 (개체로 ByVal의 보낸 사람, 경우 System.EventArgs으로 ByVal의 e)이 Me.Load \t를 처리하지 않을 경우 IsPostBack을 다음 \t \t Gridview2.DataBind() \t \t 최종면 \t 최종 하위 – frank2009