共用方式為


DataRepeater.DrawItem 事件

更新:2007 年 11 月

會在必須繪製 DataRepeaterItem 時發生。

命名空間:  Microsoft.VisualBasic.PowerPacks
組件:  Microsoft.VisualBasic.PowerPacks.Vs (在 Microsoft.VisualBasic.PowerPacks.Vs.dll 中)

語法

Public Event DrawItem As DataRepeaterItemEventHandler

Dim instance As DataRepeater
Dim handler As DataRepeaterItemEventHandler

AddHandler instance.DrawItem, handler
public event DataRepeaterItemEventHandler DrawItem
public:
 event DataRepeaterItemEventHandler^ DrawItem {
    void add (DataRepeaterItemEventHandler^ value);
    void remove (DataRepeaterItemEventHandler^ value);
}
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.
        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;
    }
}

使用權限

請參閱

參考

DataRepeater 類別

DataRepeater 成員

Microsoft.VisualBasic.PowerPacks 命名空間

其他資源

DataRepeater 控制項簡介 (Visual Studio)

HOW TO:變更 DataRepeater 控制項的外觀 (Visual Studio)