ItemDataBind, événement (SelectionList)
Se produit lorsqu'un élément d'un contrôle SelectionList est lié à des données.
public event ListDataBindEventHandler ItemDataBind
Notes
Lorsqu'un élément d'un contrôle SelectionList est créé et qu'il est lié à des données, le gestionnaire d'événements définit les propriétés de l'élément de liste à partir d'expressions arbitraires.
Un élément d'un contrôle SelectionList est de type MobileListItem.
L'événement est déclenché lorsque chaque élément de source de données est lié. Le moment est alors approprié pour filtrer ou grouper les éléments de la collection MobileListitemCollection, en utilisant les propriétés Text ou Value.
Exemple
L'exemple suivant montre comment utiliser l'événement ItemDataBind. La propriété DataValueField spécifie l'action effectuée.
[Visual Basic]
<Script language="vb" runat="server">
' Persist across multiple postbacks.
Shared i, j, k As Integer
Class Task
Private _TaskName As String
Private _Status As [String]
Public Sub New(TaskName As [String], Status As [String])
_TaskName = TaskName
_Status = Status
End Sub
Public ReadOnly Property TaskName() As [String]
Get
Return _TaskName
End Get
End Property
Public ReadOnly Property Status() As [String]
Get
Return _Status
End Get
End Property
End Class
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Not IsPostBack Then
' Initialize static variables to zero.
i = 0
j = 0
k = 0
' Initial settings for tasks.
SelectionList1.DataValueField = "Status"
SelectionList1.DataTextField = "TaskName"
' Create an array and add the tasks to it.
Dim arr As New ArrayList()
arr.Add(New Task("Verify transactions", "Done"))
arr.Add(New Task("Check balance sheet", "Scheduled"))
arr.Add(New Task("Send report", "Pending"))
' Associate and bind the SelectionList object
' to the array.
SelectionList1.DataSource = arr
SelectionList1.DataBind()
Label2.Text = "Check boxes are checked for tasks having Done" + " Status"
End If
End Sub
Sub TaskSummary(sender As [Object], e As ListDataBindEventArgs)
Select Case e.ListItem.Value
Case "Done"
i += 1
'Check the check box for status.
e.ListItem.Selected = True
Case "Scheduled"
j += 1
Case "Pending"
k += 1
End Select
Label1.Text = "You have " + i.ToString() + " tasks done, " + j.ToString() + " tasks scheduled, and " + k.ToString() + " tasks pending."
End Sub 'TaskSummary
</Script>
<body Xmlns:mobile="https://schemas.microsoft.com/Mobile/WebForm">
<mobile:Form id="Form1" runat="server">
<mobile:Label runat="server" id="Label1" ForeColor=green
Font-Italic=true />
<mobile:SelectionList runat=server id="SelectionList1"
OnItemDataBind="TaskSummary" SelectType="CheckBox"/>
<mobile:Label runat="server" id="Label2" Font-Italic=true
ForeColor=Red />
</mobile:Form>
<script runat=server>
// Persist across multiple postbacks.
static int i,j,k;
class Task
{
private String _TaskName;
private String _Status;
public Task(String TaskName, String Status)
{
_TaskName = TaskName;
_Status = Status;
}
public String TaskName { get { return _TaskName; } }
public String Status { get { return _Status; } }
}
public void Page_Load(Object sender, EventArgs e)
{
if (!IsPostBack)
{
// Initialize static variables to zero.
i = j = k = 0;
// Initial settings for tasks.
SelectionList1.DataValueField="Status";
SelectionList1.DataTextField="TaskName";
// Create an array and add the tasks to it.
ArrayList arr = new ArrayList();
arr.Add (new Task ("Verify transactions", "Done"));
arr.Add (new Task ("Check balance sheet", "Scheduled"));
arr.Add (new Task ("Send report", "Pending"));
// Associate and bind the SelectionList object
// to the array.
SelectionList1.DataSource = arr;
SelectionList1.DataBind ();
Label2.Text = "Check boxes are checked for tasks having Done" +
" Status";
}
}
void TaskSummary(Object sender, ListDataBindEventArgs e)
{
switch (e.ListItem.Value)
{
case "Done":
i++;
//Check the check box for status.
e.ListItem.Selected = true;
break;
case "Scheduled":
j++;
break;
case "Pending":
k++;
break;
Default:
break;
}
Label1.Text = "You have " + i + " tasks done, "
+ j + " tasks scheduled, and "
+ k + " tasks pending.";
}
</script>
<mobile:Form runat=server id="frm1" >
<mobile:Label runat="server" id="Label1" ForeColor=green
Font-Italic=true />
<mobile:SelectionList runat=server id="SelectionList1"
OnItemDataBind="TaskSummary" SelectType="CheckBox"/>
<mobile:Label runat="server" id="Label2" Font-Italic=true
ForeColor=Red />
</mobile:Form>
Voir aussi
ListDataBindEventArgs, classe (SelectionList) | ItemDataBind, événement (List) | List, classe | ObjectListDataBindEventArgs, classe | ObjectList, classe | OnItemDataBind, méthode | SelectionList, classe