2011-12-15 10 views
0

私は、ネストされた3つのリピータを持っているが、私は、第1および第2のデータバインドしているが、私は三番目のデータバインドする方法を見つけ出すことができない私のここで私のマークアップですネストされた3つのレベルがデータバインドする方法リピータ

Protected Sub mainMenuRepeater_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) Handles mainMenuRepeater.ItemDataBound 
     Try 
      If e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType = ListItemType.AlternatingItem Then 

       'Dim dv As DataRowView = CType(e.Item.DataItem, DataRowView) 
       Dim ad As Int32 = CType(DataBinder.Eval(e.Item.DataItem, "id").ToString(), Int32) 
       Dim db As iwebmalldatacontextDataContext = New iwebmalldatacontextDataContext() 
       Dim menus = From m In db.iwebmall_posts 
          Where m.post_type = "page" And m.post_status = 1 And m.post_parent = ad Order By m.post_menu_order 
          Select m.post_permalink, m.post_name, m.id 

       Dim subMenu As Repeater = CType(e.Item.FindControl("subMenuRepeater"), Repeater) 
       If menus.Count > 0 Then 
        With subMenu 
         .DataSource = menus 
         .DataBind() 
        End With 
       End If 

      End If 




     Catch ex As Exception 
      ' Throw ex 
     End Try 
    End Sub 

どのように私は名前のsub_subMenuRepeaterに第三のデータバインドすることができますしてください:そして、以下subMenuRepeaterという名前の第二の中継をデータバインド私のコードです。事前に感謝します

答えて

0

最初のネストされたリピータと同じプロセスを繰り返すことができます。

外部リピーターのItemDataBoundイベントが呼び出されると、現在のItemをフェッチし、ネストされたリピーターのプロパティーをバインドします。

ネストされたリピーターのItemDataBoundイベントにサブスクライブすると、サブネストされたリピーターをデータバインドすることができます。

+0

リピーター内にあるリピーターのItemDataBoundイベントを生成する方法はありません。道があれば教えてください。 –

+0

あなたのコードには、サブメニューリピーターがあります。 DataBind()を呼び出す前にItemDataBoundEventを購読することができます。 –

関連する問題