Just nu i M3-nätverket
Gå till innehåll

Blogg, problem med user controls


nsky

Rekommendera Poster

Hej,

håller på att utveckla en blogg i asp.net 2.0 och har kört fast. Har en aspx-sida med två paneler. En som ska visa alla blogg-poster och en som ska visa en blogg-post samt kommentarer. Vill inte byta sida så tanken är att visa/dölja panelerna beroende på vad man vill visa. I panel1 där alla inlägg ska visa har jag en repeater som listar en uc med två linkbuttons, när man klickar på dom ska inlägget visas samt ev. kommentarer. Det ska visas i panel2 där jag har en datalist som listar en annan uc, samtidigt ska panel1 döljas. Det är här jag har kört fast. Vet inte hur jag ska göra/tänka med linkbuttons för att rätt inlägg ska visa samt hur jag kommer åt dom från min aspx.vb sida. I databasen har jag två tabeller, en för inläggen och en för kommentarerna, i den har jag även en kolumn för id:et för inläggen.

 

UC (inläggen)

Public Property Comment() As String
       Get
           Return newComment
       End Get
       Set(ByVal value As String)
           newComment = value
       End Set
   End Property

   Protected Sub lbComment_Click(ByVal sender As Object, ByVal e As EventArgs) Handles lbComment.Click
       'Vet ej vad jag ska göra här
   End Sub

 

I page_loaden så listar jag alla blogg-inlägg i repeatern, men som sagt vet jag inte hur jag ska göra för att lista kommentarerna i att komma åt linkbutten från min första uc.

 

vb-sidan

       
page_load
Dim blogg As jonas.myBloggCls = New jonas.myBloggCls
       Dim ds As DataSet = New DataSet

       Try
           ds = blogg.GetEntrys()
           blogg = Nothing

           Dim i As Integer = 0

           While i < ds.Tables(0).Rows.Count

               Dim post As post = Page.LoadControl("post.ascx")
               post.headline = ds.Tables(0).Rows(i)(1)
               post.text = ds.Tables(0).Rows(i)(2)
               post.postDate = ds.Tables(0).Rows(i)(3)
               Repeater1.Controls.Add(post)

               i = i + 1
               Response.Write(comment)
           End While

       Catch ex As Exception
           Throw (ex)
       End Try
end sub

 

sen här skulle jag vilja komma åt linkbutton från min första uc där jag kan koppla kommentarerna till inlägget. F*n vad rörigt det här blev, svårt att förklara så här...

 

Vet inte om ni förstår hur jag menar, kan posta mer kod om det behövs

 

Mvh Jonas

 

[inlägget ändrat 2008-11-04 12:45:53 av gunnargren]

[inlägget ändrat 2008-11-04 12:46:25 av gunnargren]

Länk till kommentar
Dela på andra webbplatser

Kan du inte berätta hur du löst det i stället, det kan ju vara till nytta för någon annan.

 

Länk till kommentar
Dela på andra webbplatser

Självklart! Jag tänkte lite onödigt krångligt från början, så i stället för en uc så använder jag mig av en datalist och då blev mycket lättare. Koden ser ut så här:

 

Protected Sub DataList1_ItemCommand(ByVal source As Object, ByVal e As DataListCommandEventArgs)
       Dim btn As LinkButton = TryCast(e.CommandSource, LinkButton)
       Dim item As DataListItem = TryCast(btn.Parent, DataListItem)
       Dim key As String = Me.DataList1.DataKeys(item.ItemIndex).ToString()
       Response.Write(key)
   End Sub

   Protected Sub lbComment_Click1(ByVal sender As Object, ByVal e As EventArgs)
       Panel1.Visible = False
       Panel2.Visible = True
       Dim comment As jonas.myBlogCls = New jonas.myBlogCls
       Dim ds As DataSet = New DataSet
       Try
           ds = comment.GetComments

       Catch ex As Exception
           Throw (ex)
       End Try
   End Sub

 

Genom det här får jag id:et på den klickade inlägget och kan därifrån gå vidare till kommentarerna.

 

Hör av er om det är nåt mer ni undrar.

 

Mvh Jonas

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...