2016-07-07 2 views
1

GridView에서 근무하는 알파벳 호출기를 가져 오려고합니다. 그것은 작동하지만 편지를 보여주기 위해 사용하고있는 중계기에 한 글자 만 나타납니다. 나는 다른 게시물을 읽었고 코드를 보았지만 작동해야하는 것처럼 보였지만 그렇지 않았습니다. 도움이 될 것입니다.ASP 중계기에 데이터가 표시되지 않습니다.

여기 여기가 aspsnippets 방법에서 대부분의 코드를 사용하고

Private Sub GenerateAlphabets() 
    Dim alphabets As New List(Of ListItem)() 
    Dim alphabet As New ListItem 
    alphabet.Value = "ALL" 
    alphabet.Selected = alphabet.Value.Equals(ViewState("CurrentAlphabet")) 
    alphabets.Add(alphabet) 
    For i As Integer = 65 To 90 
     alphabet = New ListItem() 
     alphabet.Value = [Char].ConvertFromUtf32(i) 
     alphabet.Selected = alphabet.Value.Equals(ViewState("CurrentAlphabet")) 
     alphabets.Add(alphabet) 
    Next 

    rptAlphabets.DataSource = alphabets 
    rptAlphabets.DataBind() 
End Sub 

뒤에 내 코드 내 HTML

<asp:Repeater ID="rptAlphabets" runat="server"> 
    <ItemTemplate> 
     <asp:LinkButton ID="lnkBtn1" runat="server" Text='<%#Eval("Value")%>' Visible='<%# Convert.ToBoolean(Eval("Selected"))%>' OnClick="Alphabet_Click"/> 
     <asp:Label ID="lblAlpha" runat="server" Text='<%#Eval("Value")%>' Visible='<%# Convert.ToBoolean(Eval("Selected"))%>' /> 
    </ItemTemplate> 
</asp:Repeater> 

입니다.

편집 : 는이 같은 내 Page_Load

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
    Try 

     ClearMessages() 
     If Not IsPostBack Then 
      ViewState("CurrentAlphabet") = "ALL" 
      Me.GenerateAlphabets() 
      BindGrids() 
      BindDropDownListBoxes() 

     End If 
    Catch ex As Exception 
     Me.HandleError(ex) 
    End Try 

End Sub 
+0

'rptAlphabets.DataSource = alphabets'에서 [중단 점 설정] (https://msdn.microsoft.com/en-us/library/4607yxb0(v=vs.100) .aspx)을하고 검사하십시오 'alphabets'의 상태. 나는 당신이 보는 것에 놀라게 될 것입니다. – mason

+0

@mason 나는 그것을했다. 알파벳에는 모든 문자와 "모두"가 포함됩니다. 내가 단계를 밟을 때, 데이터 소스도 그것을 선택합니다. – MarchingGazelle

+0

GenerateAlphabets()를 어디에서 호출하고 있습니까? 페이지에 포스트 백이 있습니까? – Kami

답변

0

변경 당신의 LinkButton 코드에서 GenerateAlphabets를 호출하고 있습니다.

<asp:LinkButton ID="lnkBtn1" runat="server" 
     Text='<%#Eval("Value")%>' 
     Visible='<%# Convert.ToBoolean(Eval("Selected")) = False %>' 
     OnClick="Alphabet_Click"/> 

이유 : 현재 선택되지 않은 모든 LinkButton을 숨기고 있습니다. 대신에 그들을 보여줘야합니다.

+0

나는 그것을 시도했지만 오류가 발생합니다. "선두 주자." 또는 '!' 'With'문 안에 만 나타날 수 있습니다. 내가 방금 보이는 문을 제거하고 그것이 작동해야한다고 생각하는 방식으로 작동하지만 – MarchingGazelle

+0

하지만 선택한 문자에 대한 링크 단추도 표시됩니다.이 편집을 시도하십시오. 나는 그것이 C#이라고 생각했습니다. 내 나쁜 – naveen

+0

당신이 무슨 뜻인지 알 겠어 !! – MarchingGazelle

관련 문제