DataRepeaterItem 类

更新:2007 年 11 月

DataRepeater 控件用它在运行时显示数据。

命名空间:  Microsoft.VisualBasic.PowerPacks
程序集:  Microsoft.VisualBasic.PowerPacks.Vs(在 Microsoft.VisualBasic.PowerPacks.Vs.dll 中)

语法

声明
<DockingAttribute(DockingBehavior.Never)> _
Public Class DataRepeaterItem _
    Inherits Panel
用法
Dim instance As DataRepeaterItem
[DockingAttribute(DockingBehavior.Never)]
public class DataRepeaterItem : Panel
[DockingAttribute(DockingBehavior::Never)]
public ref class DataRepeaterItem : public Panel
public class DataRepeaterItem extends Panel

备注

DataRepeater 控件使用 DataRepeaterItem 对象在该控件中的每一项滚动到视图中时显示每一项的内容。只要某个项滚动到视图之外,DataRepeaterItem 就会立即失效,而且将被下一个可见项的新 DataRepeaterItem 替换。

每个项的布局和外观都基于 ItemTemplate 属性。在呈现每个 DataRepeaterItem 时,您可以在 DrawItem 事件中修改外观。

说明:

您应该仅修改可以从 DrawItem 事件访问的 DataRepeaterItem。尝试在该事件外部进行修改或创建一个新的 DataRepeaterItem 会生成意外的结果。

示例

下面的示例演示如何使用 DrawItem 事件处理程序在项滚动到视图中时进行更改。此示例假定您有一个 DataRepeater 控件,该控件已绑定到 Northwind 数据库中的 Products 表。

Private Sub DataRepeater1_DrawItem(ByVal sender As Object, ByVal e _
 As Microsoft.VisualBasic.PowerPacks.DataRepeaterItemEventArgs) _
 Handles DataRepeater1.DrawItem
    ' Alternate the back color.
    If (e.DataRepeaterItem.ItemIndex Mod 2) <> 0 Then
        ' Apply the secondary back color.
        e.DataRepeaterItem.BackColor = Color.AliceBlue
    Else
        ' Apply the default back color.
        DataRepeater1.ItemTemplate.BackColor = Color.White
    End If
    ' Change the color of out-of-stock items to red.
    If e.DataRepeaterItem.Controls(UnitsInStockTextBox.Name).Text _
     < 1 Then
        e.DataRepeaterItem.Controls(UnitsInStockTextBox.Name). _
         BackColor = Color.Red
    Else
        e.DataRepeaterItem.Controls(UnitsInStockTextBox.Name). _
         BackColor = Color.White
    End If
End Sub
private void dataRepeater1_DrawItem(object sender, 
    Microsoft.VisualBasic.PowerPacks.DataRepeaterItemEventArgs e)
{
    // Alternate the back color.
    if ((e.DataRepeaterItem.ItemIndex % 2) != 0)
    // Apply the secondary back color.
    {
        e.DataRepeaterItem.BackColor = Color.AliceBlue;
    }
    else
    {
        // Apply the default back color.
        dataRepeater1.ItemTemplate.BackColor = Color.White;
    }
    // Change the color of out-of-stock items to red.
    if (e.DataRepeaterItem.Controls["unitsInStockTextBox"].Text == "0")
    {
        e.DataRepeaterItem.Controls["unitsInStockTextBox"].BackColor = Color.Red;
    }
    else
    {
        e.DataRepeaterItem.Controls["unitsInStockTextBox"].BackColor = Color.White;
    }
}

继承层次结构

System.Object
  System.MarshalByRefObject
    System.ComponentModel.Component
      System.Windows.Forms.Control
        System.Windows.Forms.ScrollableControl
          System.Windows.Forms.Panel
            Microsoft.VisualBasic.PowerPacks.DataRepeaterItem

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

另请参见

参考

DataRepeaterItem 成员

Microsoft.VisualBasic.PowerPacks 命名空间

DrawItem

其他资源

DataRepeater 控件简介 (Visual Studio)

如何:更改 DataRepeater 控件的外观 (Visual Studio)