Freigeben über


Verwenden eines ConfirmButton-Steuerelements in einem Repeater (VB)

von Christian Wenz

PDF herunterladen

Der ConfirmButton-Extender im AJAX Control Toolkit erstellt ein Ja/Nein-Popup, wenn der Benutzer auf eine Schaltfläche klickt (einschließlich LinkButton-Steuerelement). Nur wenn auf "Ja" geklickt wird, wird die Aktion der Schaltfläche ausgeführt, andernfalls abgebrochen. Dies ist auch in einem Repeater möglich.

Übersicht

Der ConfirmButton-Extender im AJAX Control Toolkit erstellt ein Ja/Nein-Popup, wenn der Benutzer auf eine Schaltfläche klickt (einschließlich LinkButton-Steuerelement). Nur wenn auf "Ja" geklickt wird, wird die Aktion der Schaltfläche ausgeführt, andernfalls abgebrochen. Dies ist auch in einem Repeater möglich.

Schritte

Zunächst ist eine Datenquelle erforderlich. In diesem Beispiel werden die AdventureWorks-Datenbank und die Microsoft SQL Server 2005 Express Edition verwendet. Die Datenbank ist ein optionaler Bestandteil einer Visual Studio-Installation (einschließlich express edition) und kann auch separat heruntergeladen werden unter https://go.microsoft.com/fwlink/?LinkId=64064. Die AdventureWorks-Datenbank ist Teil der SQL Server 2005-Beispiele und Beispieldatenbanken (herunterladen unter https://www.microsoft.com/download/details.aspx?id=10679). Die einfachste Möglichkeit zum Einrichten der Datenbank besteht darin, das Microsoft SQL Server Management Studio (/sql/ssms/download-sql-server-management-studio-ssms) zu verwenden und die AdventureWorks.mdf Datenbankdatei anzufügen.

Für dieses Beispiel wird davon ausgegangen, dass die Instanz der SQL Server 2005 Express Edition aufgerufen SQLEXPRESS wird und sich auf demselben Computer wie der Webserver befindet. Dies ist auch das Standardsetup. Wenn sich Das Setup unterscheidet, müssen Sie die Verbindungsinformationen für die Datenbank anpassen.

Um die Funktionalität von ASP.NET AJAX und dem Steuerelement-Toolkit zu aktivieren, muss das ScriptManager Steuerelement an einer beliebigen Stelle auf der Seite (aber innerhalb des <form> Elements) platziert werden:

<asp:ScriptManager ID="asm" runat="server" />

Anschließend ist eine Datenquelle erforderlich. Aus Gründen der Einfachheit werden nur die ersten fünf Einträge in der Tabelle "Vendors" von AdventureWorks abgerufen. Beachten Sie, dass bei Verwendung des Visual Studio-Assistenten zum Erstellen der Datenquelle der Tabellenname (Vendors) derzeit nicht korrekt mit Purchasing versehen ist. Das folgende Markup ist das korrekte.

<asp:SqlDataSource ID="sds1" runat="server" ConnectionString="
 Data Source=(local)\SQLEXPRESS;Initial Catalog=AdventureWorks;Integrated Security=True"
 ProviderName="System.Data.SqlClient" SelectCommand="SELECT TOP 5
 [VendorID], [Name] FROM [Purchasing].[Vendor]" />

Diese Datenquelle kann dann innerhalb eines Repeaters verwendet werden. Wie üblich ruft die DataBinder.Eval() Methode Daten aus der Datenquelle ab. Das ConfirmButtonExtender Steuerelement muss dann innerhalb des <ItemTemplate> Abschnitts des Repeaters platziert werden, damit es für jeden Eintrag in der Datenquelle angezeigt wird.

<div>
 <ul>
 <asp:Repeater ID="rep1" DataSourceID="sds1" runat="server">
 <ItemTemplate>
 <li>
 <%#DataBinder.Eval(Container.DataItem, "Name")%>
 <asp:LinkButton ID="btn1" Text="Remove Item" runat="server" />
 <ajaxToolkit:ConfirmButtonExtender ID="cfe1" runat="server" TargetControlID="btn1" ConfirmText="Are you sure?!" />
 </li>
 </ItemTemplate>
 </asp:Repeater>
 </ul>
</div>

Die Schaltfläche

Die Schaltfläche "Bestätigen" wird neben jedem Eintrag aus der Datenquelle angezeigt (Klicken Sie hier, um das Bild in voller Größe anzuzeigen)