DataRepeater.DrawItem 事件

,则必须进行绘制,发生 DataRepeaterItem

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

语法

声明
Public Event DrawItem As DataRepeaterItemEventHandler
public event DataRepeaterItemEventHandler DrawItem
public:
 event DataRepeaterItemEventHandler^ DrawItem {
    void add (DataRepeaterItemEventHandler^ value);
    void remove (DataRepeaterItemEventHandler^ value);
}
member DrawItem : IEvent<DataRepeaterItemEventHandler,
    DataRepeaterItemEventArgs>
JScript 不支持事件。

备注

使用此事件更改 DataRepeaterItem 对象的外观,它们移动到视图。

在运行时,,每个项目移动到视图,与外观相关的属性可以基于条件设置。 例如,在日程安排应用程序中,您可以更改某个项的背景颜色来警告用户该项已过期。 如果在条件语句的属性例如 If…Then,还必须使用 Else 子句指定外观,当条件不满足时。

有关如何处理事件的更多信息,请参见使用事件

示例

DataRepeater 控件的一些常见自定义包括以交替颜色显示行以及基于条件更改字段的颜色。 下面的示例演示如何执行这些自定义项。 此示例假定您有一个 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.
        e.DataRepeaterItem.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.
        e.DataRepeaterItem.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;
    }
}

.NET Framework 安全性

请参见

参考

DataRepeater 类

Microsoft.VisualBasic.PowerPacks 命名空间

其他资源

DataRepeater 控件简介 (Visual Studio)

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