共用方式為


HOW TO:允許使用者選取 DataList Web 伺服器控制項中的項目

更新:2007 年 11 月

您可以指定讓使用者能夠選取 DataList Web 伺服器控制項中的個別項目。一般來說,項目在選取後,會以反白的視覺方式來顯示。除此之外,您還可為選取的項目顯示不同資訊。

若要讓使用者選取 DataList 控制項中的項目

  1. 請建立 SelectedItemTemplate,以定義標記 (Markup) 配置以及選取項目的控制項。如需詳細資訊,請參閱ASP.NET Web 伺服器控制項樣板

  2. 設定控制項的 SelectedItemStyle 屬性。如需詳細資訊,請參閱 ASP.NET Web 伺服器控制項和 CSS 樣式

  3. 在 ItemTemplate 中加入 Button 或 LinkButton Web 伺服器控制項 (如果您正在使用 AlternatingItemTemplate 的話,也要在其中加入)。

  4. 將步驟 3 中按鈕的 CommandName 屬性設定為 select (區分大小寫)。

  5. DataList 控制項的 SelectedIndexChanged 事件建立事件處理常式。在事件處理常式中,呼叫控制項的 DataBind 方法以重新整理控制項中的資訊。完整的程式碼看起來可能如下:

    Protected Sub DataList1_SelectedIndexChanged(ByVal sender As _
            System.Object, ByVal e As System.EventArgs) _
            Handles DataList1.SelectedIndexChanged
       DataList1.DataBind()
    End Sub
    
    protected void DataList1_SelectedIndexChanged (object sender, 
        System.EventArgs e)
    {
       DataList1.DataBind();
    }
    

若要取消選取,請將控制項的 SelectedIndex 屬性設定為 -1。若要這麼做,您可將 Button Web 伺服器控制項加入至 SelectedItem 樣板,並將其 CommandName 屬性設定為 "unselect"。此按鈕的 Click 事件也會轉送至 DataGrid 控制項的 ItemCommand 事件。

完整的程式碼看起來可能如下:

Protected Sub DataList1_ItemCommand(ByVal source As Object, _
        ByVal e As DataListCommandEventArgs) _
        Handles DataList1.ItemCommand
   If e.CommandName = "unselect" Then
      DataList1.SelectedIndex = -1
   End If
   DataList1.DataBind()
End Sub

請參閱

參考

DataList Web 伺服器控制項概觀