CheckBoxList.IRepeatInfoUser.RenderItem 方法

定义

有关此成员的说明,请参见 RenderItem(ListItemType, Int32, RepeatInfo, HtmlTextWriter)

 virtual void System.Web.UI.WebControls.IRepeatInfoUser.RenderItem(System::Web::UI::WebControls::ListItemType itemType, int repeatIndex, System::Web::UI::WebControls::RepeatInfo ^ repeatInfo, System::Web::UI::HtmlTextWriter ^ writer) = System::Web::UI::WebControls::IRepeatInfoUser::RenderItem;
void IRepeatInfoUser.RenderItem (System.Web.UI.WebControls.ListItemType itemType, int repeatIndex, System.Web.UI.WebControls.RepeatInfo repeatInfo, System.Web.UI.HtmlTextWriter writer);
abstract member System.Web.UI.WebControls.IRepeatInfoUser.RenderItem : System.Web.UI.WebControls.ListItemType * int * System.Web.UI.WebControls.RepeatInfo * System.Web.UI.HtmlTextWriter -> unit
override this.System.Web.UI.WebControls.IRepeatInfoUser.RenderItem : System.Web.UI.WebControls.ListItemType * int * System.Web.UI.WebControls.RepeatInfo * System.Web.UI.HtmlTextWriter -> unit
Sub RenderItem (itemType As ListItemType, repeatIndex As Integer, repeatInfo As RepeatInfo, writer As HtmlTextWriter) Implements IRepeatInfoUser.RenderItem

参数

itemType
ListItemType

ListItemType 枚举值之一。

repeatIndex
Int32

指定列表控件中项的位置的序号索引。

repeatInfo
RepeatInfo

表示用于呈现列表中项的信息的 RepeatInfo 对象。

writer
HtmlTextWriter

表示在客户端上呈现 HTML 内容的输出流的 HtmlTextWriter 对象。

实现

示例

下面的代码示例演示如何在自定义CheckBoxList对象上使用IRepeatInfoUser接口成员。

<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS" %>
<%@ Page language="c#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>Custom CheckBoxList - IRepeatInfoUser - C# Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">
      <h3>Custom CheckBoxList - IRepeatInfoUser - C# Example</h3>
      <aspSample:CustomCheckBoxListIRepeatInfoUser
        id="CheckBoxList1" runat="server">
          <asp:ListItem Selected="True">Item 1</asp:ListItem>
          <asp:ListItem>Item 2</asp:ListItem>
          <asp:ListItem>Item 3</asp:ListItem>
          <asp:ListItem>Item 4</asp:ListItem>
          <asp:ListItem>Item 5</asp:ListItem>
          <asp:ListItem>Item 6</asp:ListItem>
      </aspSample:CustomCheckBoxListIRepeatInfoUser>
    </form>
  </body>
</html>
<%@ Page language="VB" %>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
        <title>Custom CheckBoxList - IRepeatInfoUser - VB.NET Example</title>
    </head>
    <body>
        <form id="Form1" method="post" runat="server">
            <h3>Custom CheckBoxList - IRepeatInfoUser - VB.NET Example</h3>
      <aspSample:CustomCheckBoxListIRepeatInfoUser id="CheckBoxList" runat="server">
                <asp:ListItem  Selected="True">Item 1</asp:ListItem>
                <asp:ListItem>Item 2</asp:ListItem>
                <asp:ListItem>Item 3</asp:ListItem>
                <asp:ListItem>Item 4</asp:ListItem>
                <asp:ListItem>Item 5</asp:ListItem>
                <asp:ListItem>Item 6</asp:ListItem>
            </aspSample:CustomCheckBoxListIRepeatInfoUser>
        </form>
    </body>
</html>
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Security.Permissions;

namespace Samples.AspNet.CS.Controls
{
    [AspNetHostingPermission(SecurityAction.Demand, Level = 
        AspNetHostingPermissionLevel.Minimal)]
    public class CustomCheckBoxListIRepeatInfoUser : CheckBoxList
    {
        private bool hasFooter;
        private bool hasHeader;
        private bool hasSeparators;
        private int repeatedItemCount;
        private Style itemStyleItem;

        protected override void OnPreRender(System.EventArgs e)
        {
            // Call the base class's OnPreRender method
            base.OnPreRender(e);

            // Get a self-referencing IRepeatInfoUser object
            IRepeatInfoUser repeatInfoUser = (IRepeatInfoUser)this;

            // Get the IRepeatInfoUser members values.
            hasFooter = repeatInfoUser.HasFooter;
            hasHeader = repeatInfoUser.HasHeader;
            hasSeparators = repeatInfoUser.HasSeparators;
            repeatedItemCount = repeatInfoUser.RepeatedItemCount;
            itemStyleItem = repeatInfoUser.GetItemStyle(ListItemType.Item, 0);
        }

        protected override void Render(HtmlTextWriter writer)
        {
            // Create and setup a RepeatInfo class.
            RepeatInfo repeatInfo = new RepeatInfo();
            repeatInfo.RepeatColumns = 0;
            repeatInfo.RepeatDirection = RepeatDirection.Horizontal;
            repeatInfo.RepeatLayout = RepeatLayout.Table;

            // Get a self-referencing IRepeatInfoUser object
            IRepeatInfoUser repeatInfoUser = (IRepeatInfoUser)this;

            // Render the items using the above RepeatInfo class.
            repeatInfoUser.RenderItem(ListItemType.Item, 0, repeatInfo, writer);
            repeatInfoUser.RenderItem(ListItemType.Item, 1, repeatInfo, writer);
            repeatInfoUser.RenderItem(ListItemType.Item, 2, repeatInfo, writer);
            repeatInfoUser.RenderItem(ListItemType.Item, 3, repeatInfo, writer);
            repeatInfoUser.RenderItem(ListItemType.Item, 4, repeatInfo, writer);
            repeatInfoUser.RenderItem(ListItemType.Item, 5, repeatInfo, writer);
        }
    }
}
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Security.Permissions

Namespace Samples.AspNet.VB.Controls

    <AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public Class CustomCheckBoxListIRepeatInfoUser
        Inherits CheckBoxList

        Private _hasFooter As Boolean
        Private _hasHeader As Boolean
        Private _hasSeparators As Boolean
        Private _repeatedItemCount As Integer
        Private _itemStyleItem As Style

        Protected Overrides Sub OnPreRender(ByVal e As System.EventArgs)
            ' Call the base class's OnPreRender method
            MyBase.OnPreRender(e)

            ' Get a self-referencing IRepeatInfoUser object
            Dim repeatInfoUser As IRepeatInfoUser
            repeatInfoUser = CType(Me, IRepeatInfoUser)

            ' Get the IRepeatInfoUser member values.
            _hasFooter = repeatInfoUser.HasFooter
            _hasHeader = repeatInfoUser.HasHeader
            _hasSeparators = repeatInfoUser.HasSeparators
            _repeatedItemCount = repeatInfoUser.RepeatedItemCount
            _itemStyleItem = repeatInfoUser.GetItemStyle(ListItemType.Item, 0)
        End Sub

        Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter)
            ' Create and setup a RepeatInfo class.
            Dim repeatInfo As New RepeatInfo
            repeatInfo.RepeatColumns = 0
            repeatInfo.RepeatDirection = RepeatDirection.Horizontal
            repeatInfo.RepeatLayout = RepeatLayout.Table

            ' Get a self-referencing IRepeatInfoUser object
            Dim repeatInfoUser As IRepeatInfoUser
            repeatInfoUser = CType(Me, IRepeatInfoUser)

            ' Render the items using the above RepeatInfo and IRepeatInfoUser classes.
            repeatInfoUser.RenderItem(ListItemType.Item, 0, repeatInfo, writer)
            repeatInfoUser.RenderItem(ListItemType.Item, 1, repeatInfo, writer)
            repeatInfoUser.RenderItem(ListItemType.Item, 2, repeatInfo, writer)
            repeatInfoUser.RenderItem(ListItemType.Item, 3, repeatInfo, writer)
            repeatInfoUser.RenderItem(ListItemType.Item, 4, repeatInfo, writer)
            repeatInfoUser.RenderItem(ListItemType.Item, 5, repeatInfo, writer)
        End Sub
    End Class

End Namespace

注解

通常,应使用 CheckBoxList.RenderItem 该方法在对象中 CheckBoxList 呈现项。

该方法 IRepeatInfoUser.RenderItem 是显式接口成员实现。 它只能在 CheckBoxList 实例被强制转换为 IRepeatInfoUser 接口时使用。

继承者说明

若要定义用于在对象中 CheckBoxList 呈现项的自定义实现,请重写 RenderItem(ListItemType, Int32, RepeatInfo, HtmlTextWriter) 该成员。 显式接口实现调用 RenderItem(ListItemType, Int32, RepeatInfo, HtmlTextWriter) 该方法以在控件中呈现项。

适用于

另请参阅