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 コントロールの一般的なカスタマイズの例として、行の色を交互にする、条件に基づいてフィールドの色を変更する、などが挙げられます。このようなカスタマイズを行う方法を次の例に示します。この例は、Northwind データベースの Products テーブルにバインドされた DataRepeater コントロールがあることを前提としています。
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;
}
}
アクセス許可
- 直前の呼び出し元に対する完全な信頼。このメンバは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。
参照
参照
Microsoft.VisualBasic.PowerPacks 名前空間