2014-06-23 1 views
1

ListView를 사용하여 블로그 페이지를 만들려고합니다. 메시지에 parentmessageid가 들어 있으면 listview에 다른 CSS 스타일을 추가하는 reply 함수를 작성합니다.listviewitem 내부 컨트롤을 기반으로 listview 순서 변경

현재 작동 중입니다. 이제 응답 메시지가 부모 메시지 아래에 배치되도록 메시지의 순서를 변경해야합니다.

protected void ListItemMessages_Load(object sender, EventArgs e) 
{ 
    HtmlGenericControl li = (HtmlGenericControl)sender; 
    ListViewItem container = (ListViewItem)li.NamingContainer; 
    Label LabelParentMessageID = (Label)container.FindControl("LabelParentMessageID"); 

    if (LabelParentMessageID.Text != string.Empty) 
    { 
     li.Attributes.Add("class", "reply"); 
    } 
} 

ASP.NET 목록보기 : LabelMessageID에 값이 항목에 대한 CSS 스타일을 추가

protected void LoadMessages(int userid) 
{ 
    Bericht berichten = new Bericht(); 
    if (berichten.LaadBerichten(userid).Tables.Count > 0) 
    { 
     ListViewMessages.DataSource = berichten.LaadBerichten(userid); 
     ListViewMessages.DataBind(); 
    } 
} 

기능 : 목록보기를 채우기 위해 데이터 소스에 대한

기능 : 당신은 내 구현 이하를 찾을 것입니다 출처 :

<asp:ListView ID="ListViewMessages" runat="server"> 
    <ItemTemplate> 
     <li id="ListItemMessages" runat="server" onload="ListItemMessages_Load"> 
      <img src="<%# Eval("[imagelocation]")%>" alt="image" /> 
      <div class="top-pointer"></div> 
      <div class="pointer"></div> 
      <!--Hidden Controls--> 
      <asp:Label ID="LabelMessageID" runat="server" Text='<%# Eval("[messageid]")%>' Visible="false"></asp:Label> 
      <asp:Label ID="LabelParentMessageID" runat="server" Text='<%# Eval("[parentmessageid]")%>' Visible="false"/> 
     </li> 
    </ItemTemplate> 
</asp:ListView> 

누군가가 나를 그 물건들? 왜냐하면 나는 이것을 성취 할 방법을 모르기 때문입니다.

답변

0

는 SQL 저장 프로 시저를 사용하여 해결 ds.Tables[0].DefaultView.Sort = "SortField DESC";

+0

'berichten.LaadBerichten'은 데이터 집합입니다. 날짜 또는 기타로 주문할 수 없습니다. 메시지의 학부모 ID로 주문해야합니다. – Mitchell

+0

ds.Tables [0] .DefaultView.Sort = "SortField DESC"와 같은 것을 시도하십시오. – Yagzii

관련 문제