Używanie kontrolki ConfirmButton w elemencie powtarzanym (VB)

Autor: Christian Wenz

Pobierz plik PDF

Rozszerzenie ConfirmButton w zestawie narzędzi AJAX Control Toolkit tworzy wyskakujące okienko Tak/Nie, gdy użytkownik kliknie przycisk (w tym kontrolkę LinkButton). Tylko wtedy, gdy klikniesz przycisk Tak, akcja przycisku zostanie wykonana, w przeciwnym razie anulowana. Jest to również możliwe w powtarzaniu.

Omówienie

Rozszerzenie ConfirmButton w zestawie narzędzi AJAX Control Toolkit tworzy wyskakujące okienko Tak/Nie, gdy użytkownik kliknie przycisk (w tym kontrolkę LinkButton). Tylko wtedy, gdy klikniesz przycisk Tak, akcja przycisku zostanie wykonana, w przeciwnym razie anulowana. Jest to również możliwe w powtarzaniu.

Kroki

Przede wszystkim wymagane jest źródło danych. W tym przykładzie użyto bazy danych AdventureWorks i SQL Server 2005 Express Edition firmy Microsoft. Baza danych jest opcjonalną częścią instalacji programu Visual Studio (w tym wersji ekspresowej) i jest również dostępna jako oddzielny plik do pobrania w obszarze https://go.microsoft.com/fwlink/?LinkId=64064. Baza danych AdventureWorks jest częścią przykładów i przykładowych baz danych SQL Server 2005 (pobierz na stronie https://www.microsoft.com/download/details.aspx?id=10679). Najprostszym sposobem skonfigurowania bazy danych jest użycie programu Microsoft SQL Server Management Studio (/sql/ssms/download-sql-server-management-studio-ssms) i dołączenie AdventureWorks.mdf pliku bazy danych.

W tym przykładzie przyjęto założenie, że wystąpienie SQL Server 2005 Express Edition jest wywoływane SQLEXPRESS i znajduje się na tej samej maszynie co serwer internetowy. Jest to również konfiguracja domyślna. Jeśli konfiguracja jest inna, musisz dostosować informacje o połączeniu dla bazy danych.

Aby można było aktywować funkcje ASP.NET AJAX i Control Toolkit, kontrolka ScriptManager musi zostać umieszczona w dowolnym miejscu na stronie (ale w elemecie <form> ):

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

Następnie wymagane jest źródło danych. Ze względu na prostotę pobieranych jest tylko pięć pierwszych wpisów w tabeli Vendor firmy AdventureWorks. Pamiętaj, że w przypadku tworzenia źródła danych przy użyciu kreatora programu Visual Studio nazwa tabeli (Vendors) nie jest obecnie poprawnie poprzedzona prefiksem Purchasing. Następująca adiustacja jest poprawna:

<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]" />

To źródło danych może być następnie używane w ramach powtarzania. Jak zwykle DataBinder.Eval() metoda pobiera dane ze źródła danych. Kontrolkę ConfirmButtonExtender należy następnie umieścić w <ItemTemplate> sekcji repeatera, aby była wyświetlana dla każdego wpisu w źródle danych.

<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>

Przycisk potwierdzania jest wyświetlany obok każdego wpisu ze źródła danych

Przycisk potwierdzania jest wyświetlany obok każdego wpisu ze źródła danych (kliknij, aby wyświetlić obraz o pełnym rozmiarze)