亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

動態加載用戶控件至DataList并為用戶控件賦值實例演示

2024-07-10 13:23:09
字體:
來源:轉載
供稿:網友
為了實現這個演示,Insus.NET使用通用的新聞例子,它類別(目錄)以及文章。在一個頁面,顯示所有類別,每個目錄下顯示最新幾條新聞。

效果如下:

動態加載用戶控件至DataList并為用戶控件賦值實例演示

目錄是用DataList控件顯示,而文章標題列表是一個用戶控件顯示,這個用戶控件將動態被加入至DataList。

復制代碼 代碼如下:


View Code
<asp:Repeater runat="server" OnItemDataBound="Repeater1_ItemDataBound">
<HeaderTemplate>
<table cellpadding="5" cellspacing="0">
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
$
</td>
<td>
<asp:HyperLink runat="server" NavigateUrl='<%# "~/ArticleView.aspx?ID=" & Eval("Article_nbr")%>' ToolTip='<%# Eval("Subject")%>' Target="_blank"></asp:HyperLink>
</td>
<td>
<%# objInsusDateTimeUtility.GetDateTime(Eval("PublicDate"), "yyyy-MM-dd")%>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>


復制代碼 代碼如下:


View Code
View Code
Imports System.Data
Imports Insus.NET
Partial Class AscxControls_ArticleList
Inherits System.Web.UI.UserControl
Implements ISetValue '繼承接口
Dim objArticle As New Article()
Protected objInsusDateTimeUtility As New InsusDateTimeUtility()
Private _DataSource As Object
Private _SubjectLength As Integer = 20
Public WriteOnly Property SubjectLength() As Integer
Set(ByVal value As Integer)
_SubjectLength = value
End Set
End Property
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
Data_Binding()
End Sub
'綁定數據至Repeater控件
Private Sub Data_Binding()
Me.Repeater1.DataSource = _DataSource
Me.Repeater1.DataBind()
End Sub
Protected Sub Repeater1_ItemDataBound(ByVal sender As Object, ByVal e As RepeaterItemEventArgs)
Dim objDrv As DataRowView = DirectCast(e.Item.DataItem, DataRowView)
If e.Item.ItemType = ListItemType.AlternatingItem OrElse e.Item.ItemType = ListItemType.Item Then
If e.Item.FindControl("HyperLink1") IsNot Nothing Then
Dim LinkSubject As HyperLink = DirectCast(e.Item.FindControl("HyperLink1"), HyperLink)
If objDrv("Subject").Length > _SubjectLength Then
LinkSubject.Text = objDrv("Subject").Substring(0, _SubjectLength) & "..."
Else
LinkSubject.Text = objDrv("Subject").ToString()
End If
End If
End If
End Sub
'實現接口
Public Sub SetValue(str As Object) Implements ISetValue.SetValue
Me._DataSource = str
End Sub
End Class


上面用戶控件中,有一個接口:

復制代碼 代碼如下:


ISetValue
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Insus.NET
{
public interface ISetValue
{
void SetValue(object obj);
}
}


顯示目錄:

復制代碼 代碼如下:


View Code
<asp:DataList runat="server" RepeatColumns="2" RepeatDirection="Horizontal" DataKeyField="Catalog_nbr" OnItemDataBound="DataListCatalog_ItemDataBound">
<ItemTemplate>
<div>
<%# Eval("CatalogName")%>
</div>
<asp:PlaceHolder runat="server"></asp:PlaceHolder>
</ItemTemplate>
</asp:DataList>


從數據庫獲取數據并綁定至目錄的DataList控件。

復制代碼 代碼如下:


View Code
Imports Insus.NET
Partial Class Index
Inherits System.Web.UI.Page
Dim objCatalog As New Catalog()
Dim objArticle As New Article()
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not IsPostBack Then
Data_Binding()
End If
End Sub
Private Sub Data_Binding()
objCatalog.IsActive = True
Me.DataListCatalog.DataSource = objCatalog.GetByIsActive()
Me.DataListCatalog.DataBind()
End Sub
End Class


下面是重點,就是OnItemDataBound事件,在這個事件中,需要找到asp:PlaceHolder控件,這個容器將用來加載用戶控件。

復制代碼 代碼如下:


Protected Sub DataListCatalog_ItemDataBound(sender As Object, e As DataListItemEventArgs)
If e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType = ListItemType.AlternatingItem Then
'判斷asp:PlaceHolder是否存在
If e.Item.FindControl("PlaceHolderArticleList") IsNot Nothing Then
Dim ctllaceHolder As PlaceHolder = DirectCast(e.Item.FindControl("PlaceHolderArticleList"), PlaceHolder)
'動態加載用戶控件,并轉換為接口。
Dim objuc As ISetValue = DirectCast(LoadControl("~/AscxControls/ArticleList.ascx"), ISetValue)
'找到DataList控件的目錄主鍵
objArticle.Catalog_nbr = Me.DataListCatalog.DataKeys(e.Item.ItemIndex)
objArticle.Top = 2
'為用戶控件賦值。
objuc.SetValue(objArticle.GetArticalTopByCatalog())
'加載用戶控件。
ctllaceHolder.Controls.Add(objuc)
End If
End If
End Sub

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美久久精品午夜青青大伊人| 久久精品99久久香蕉国产色戒| 高清一区二区三区日本久| 51午夜精品视频| 国产成人一区二区| 欧美专区日韩视频| 日韩精品免费视频| 美女撒尿一区二区三区| 国精产品一区一区三区有限在线| 国产亚洲美女久久| 欧美激情在线视频二区| 国产高清在线不卡| 欧美专区在线观看| 久久影院资源网| 97久久精品在线| 国产深夜精品福利| 欧美日韩不卡合集视频| 91伊人影院在线播放| 韩日欧美一区二区| 日韩成人av在线播放| 亚洲欧美激情在线视频| 亚洲精品久久久久久下一站| 日韩欧美在线观看视频| 成人精品一区二区三区电影免费| 最好看的2019年中文视频| 国产丝袜视频一区| 91久久久久久久久久久| 亚洲在线第一页| 亚洲国产欧美一区二区丝袜黑人| 韩国精品久久久999| 这里精品视频免费| 国产区精品在线观看| 亚洲欧美国产另类| 亚洲www在线观看| 日韩免费av片在线观看| 欧美日韩国产限制| 国产成人精品综合久久久| 国产成人短视频| 亚洲色图第三页| 亚洲欧美中文另类| 久久久久久久影视| 岛国av一区二区三区| 亚洲欧美日本另类| 欧美电影《睫毛膏》| 26uuu另类亚洲欧美日本老年| 国产精品久久综合av爱欲tv| 精品国产乱码久久久久久虫虫漫画| 97视频在线观看免费高清完整版在线观看| 亚洲一区二区免费| 91九色单男在线观看| 欧美激情国产精品| 亚洲综合小说区| 亚洲影院在线看| 欧美激情乱人伦| 日韩精品视频在线| 98视频在线噜噜噜国产| 色香阁99久久精品久久久| 亚洲人成网站色ww在线| 亚洲精品美女久久| 高潮白浆女日韩av免费看| 日韩欧中文字幕| 欧美寡妇偷汉性猛交| 中文字幕欧美专区| 欧美小视频在线观看| 久久久久久综合网天天| 国产在线a不卡| 中文字幕九色91在线| 日本精品中文字幕| 久久福利视频网| 成人美女免费网站视频| 不卡av电影在线观看| 热门国产精品亚洲第一区在线| 亚洲欧美精品suv| 久久影视电视剧免费网站| 欧美日韩中文在线| 51精品在线观看| 欧美黄色三级网站| 亚洲成人免费在线视频| 粗暴蹂躏中文一区二区三区| 精品亚洲国产成av人片传媒| 中文字幕亚洲自拍| 国产精品男人爽免费视频1| 亚洲视频国产视频| 日韩av中文字幕在线播放| 91精品国产综合久久久久久蜜臀| 亚洲无线码在线一区观看| 国产精品视频公开费视频| 欧美日韩国产成人| 日韩在线中文字幕| 久久久中精品2020中文| 午夜精品一区二区三区在线视| 久久精品国产亚洲精品| 国产亚洲精品久久| 51精品国产黑色丝袜高跟鞋| 欧美xxxwww| 在线观看欧美www| 91黄色8090| 亚洲香蕉成视频在线观看| 97不卡在线视频| 日本成人精品在线| 成人妇女淫片aaaa视频| 亚洲欧美日韩一区在线| 国产福利精品在线| 亚洲第一精品久久忘忧草社区| 色婷婷综合久久久久| 亚洲最大成人网色| 在线一区二区日韩| 欧美中文在线免费| 久久久久久这里只有精品| 久久天天躁狠狠躁老女人| 精品偷拍各种wc美女嘘嘘| 久操成人在线视频| 亚洲国产精品电影| 中文精品99久久国产香蕉| 亚洲精品一区中文字幕乱码| 国产一区二区激情| 高清一区二区三区日本久| 92国产精品久久久久首页| 日韩影视在线观看| 日韩欧美高清视频| 日韩精品视频三区| 成人在线中文字幕| 欧美成人午夜激情| 久青草国产97香蕉在线视频| 国产999精品| 国产一区二区三区高清在线观看| 最近2019中文字幕一页二页| 亚洲va欧美va国产综合剧情| 国产99久久精品一区二区永久免费| 亚洲va久久久噜噜噜久久天堂| 国产精品一区二区三区在线播放| 日韩69视频在线观看| 久久av在线播放| 中文字幕亚洲欧美日韩高清| 欧美在线xxx| 97激碰免费视频| 国产精品福利在线观看网址| 国产精品免费久久久久久| 国产精品青草久久久久福利99| 精品国产户外野外| 成人高清视频观看www| 亚洲午夜av久久乱码| 欧美一区在线直播| 精品性高朝久久久久久久| 国产亚洲福利一区| 亚洲免费精彩视频| 久久久久久久久久久久久久久久久久av| 亚洲另类激情图| 国内精品视频一区| 欧美日韩国产综合视频在线观看中文| 欧美高清性猛交| 国产女精品视频网站免费| 欧美激情中文字幕乱码免费| 国产中文字幕91| 亚洲精品日韩久久久| 国产精品久久av| 亚洲精品美女在线| 91在线国产电影| 亚洲国产精品yw在线观看| 久久精品国产一区| 亚洲欧美国产va在线影院| 欧美成人在线影院| 欧美性xxxx在线播放| 国产成人a亚洲精品|