Gridview delete button event

Posted on 2008-10-10
Last Modified: 2012-06-27
I've a gridview with a delete button on each row. When I click the button on a row, I want to delete that row from the Gridviewand from the database. The Gridview is bound to a table of my access database. Below you can find the code of my Gridview.


<asp:GridView ID="grdAbsentismo" runat="server" AutoGenerateColumns="False" DataSourceID="GridDataSource" BorderColor="Black" BorderStyle="Solid" BorderWidth="1px" CellPadding="4" ForeColor="#333333">
                    <asp:BoundField DataField="Empregado" HeaderText="Empregado" SortExpression="Empregado">
                        <ItemStyle HorizontalAlign="Center" Width="150px" />
                    <asp:BoundField DataField="Motivo" HeaderText="Motivo" SortExpression="Motivo">
                        <ItemStyle HorizontalAlign="Center" Width="180px" />
                    <asp:BoundField DataField="MotivoLei" HeaderText="Detalhe Absentismo" SortExpression="MotivoLei">
                        <ItemStyle HorizontalAlign="Center" Width="200px" />
                    <asp:BoundField DataField="DataInicio" HeaderText="Data de Inicio" SortExpression="DataInicio" DataFormatString="{0:dd/MM/yyyy}">
                        <ItemStyle HorizontalAlign="Center" Width="90px" />
                    <asp:BoundField DataField="Dias" HeaderText="N&#186; Dias" SortExpression="Dias">
                        <ItemStyle HorizontalAlign="Center" Width="60px" />
                    <asp:ButtonField ButtonType="Button" Text="Remover">
                        <ItemStyle HorizontalAlign="Center" Width="100px" />
                <HeaderStyle BackColor="#5D7B9D" BorderStyle="Solid" BorderWidth="1px" Height="25px" Font-Bold="True" ForeColor="White" />
                <RowStyle BorderColor="Black" BorderStyle="Solid" BorderWidth="1px" Height="25px" BackColor="#F7F6F3" ForeColor="#333333" HorizontalAlign="Left" />
                <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
                <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
                <EditRowStyle BackColor="#999999" />
                <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
            <asp:AccessDataSource ID="GridDataSource" runat="server" DataFile="~/db/manpower.mdb"
                SelectCommand="SELECT [Empregado], [Motivo], [DataInicio], [Dias], [MotivoLei] FROM [Absentismo]" CacheExpirationPolicy="Sliding"></asp:AccessDataSource>

Open in new window

Question by:jppinto
LVL 20

Expert Comment

ID: 22685955
You'll have to configure a delete command for the accessdatasource
LVL 16

Expert Comment

by:Gyanendra Singh
ID: 22685979
supported to informaniac comment .. need to add this in access datasource
 DeleteCommand="DELETE FROM xxxx
                 WHERE ID=@ID"

also need to add DataKeyNames in your grid control so as per sample it would be
<asp:GridView ID="grdAbsentismo" runat="server" DataKeyNames="ID"  AutoGenerateColumns="False" DataSourceID="GridDataSource" BorderColor="Black" BorderStyle="Solid" BorderWidth="1px" CellPadding="4" ForeColor="#333333">
LVL 33

Author Comment

ID: 22686113
Can you be more explicit please? I've started using ASP just a few days ago...


Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

LVL 20

Expert Comment

ID: 22686139
LVL 48

Accepted Solution

jpaulino earned 500 total points
ID: 22686303
The easy way (I think) is to remove that buttonfield and add a command field(delete). Then change the "delete" text to "remover" and the button type to "button" (instead of link)
Don't forget you need to have a primary key field!
LVL 33

Author Comment

ID: 22689088
I've tryed the solution presented by jpaulino and it seem to be the simplest solution for what I need to do.


LVL 33

Author Closing Comment

ID: 31504970
Simple solution. Good work!

Featured Post

Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity Errors when sending data to SQL 5 20
jquery datatables, MVC 9 39
Error handling in site 5 25
List<PaisEntity> - show some 1 24
One of the pain points with developing AJAX, JavaScript, JQuery, and other client-side behaviors is that JavaScript doesn’t allow for cross domain request for pulling content. For example, JavaScript code on could not pull conte…
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
In a recent question ( here at Experts Exchange, a member asked how to add page numbers to a PDF file using Adobe Acrobat XI Pro. This short video Micro Tutorial sh…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question