AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Prism Abfrage bei Delete im Datagrid
Thema durchsuchen
Ansicht
Themen-Optionen

Abfrage bei Delete im Datagrid

Offene Frage von "r_kerber"
Ein Thema von r_kerber · begonnen am 23. Aug 2005 · letzter Beitrag vom 28. Aug 2005
 
Benutzerbild von r_kerber
r_kerber

Registriert seit: 11. Feb 2003
Ort: Trittau
3.538 Beiträge
 
Delphi XE Professional
 
#1

Abfrage bei Delete im Datagrid

  Alt 23. Aug 2005, 20:18
Moin moin,

habe in einem aspatagrid eine zusättzliche asp:ButtonColumn eingefügt, in der eine Delete-Button angezeigt. Nun soll beim Klicken auf diese Button ein Abfrage-Fenster geöffnet werden. Dazu habe ich im I-Net einen Beispiel-Code gefunden, der allerdings in VB.Net geschrieben ist:
Code:
  Sub dgPopularFAQs_ItemDataBound(sender as Object, e as DataGridItemEventArgs)
    ' First, make sure we're NOT dealing with a Header or Footer row
    If e.Item.ItemType <> ListItemType.Header AND _
         e.Item.ItemType <> ListItemType.Footer then
      'Now, reference the LinkButton control that the Delete ButtonColumn
      'has been rendered to
      Dim deleteButton as LinkButton = e.Item.Cells(0).Controls(0)

      'We can now add the onclick event handler
      deleteButton.Attributes("onclick") = "javascript:return " & _
                 "confirm('Are you sure you want to delete FAQ #" & _
                 DataBinder.Eval(e.Item.DataItem, "FAQID") & "?')"  
    End If
  End Sub
Bisher ist es mir noch nicht gelungen, diesen so in Delphi zu übersetzen, daß er ohne Probleme läuft, hier einer meiner Versuche:
Delphi-Quellcode:
procedure TWebForm1.dgTest_ItemDataBound(sender: System.Object; e: System.Web.UI.WebControls.DataGridItemEventArgs);
var
  bDeleteButton: LinkButton;
begin
    If (e.Item.ItemType = ListItemType.Item) or
       (e.Item.ItemType = ListItemType.AlternatingItem) Then
    begin
// bDeleteButton := LinkButton.Create;
      bDeleteButton := LinkButton (e.Item.Cells[4].Controls[0]);
      bDeleteButton.Attributes['onclick'] := 'javascript:return ' +
                 'confirm(''Are you sure you want to delete FAQ # ?'');';
    end;
end;
Es erscheint folgende Fehlermeldung:
Zitat:
Beschreibung: Beim Ausführen der aktuellen Webanforderung ist ein unverarbeiteter Fehler aufgetreten. Überprüfen Sie die Stapelüberwachung, um weitere Informationen über diesen Fehler anzuzeigen und festzustellen, wo der Fehler im Code verursacht wurde.

Ausnahmedetails: System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

Quellfehler:


Zeile 202:// bDeleteButton := LinkButton.Create;
Zeile 203: bDeleteButton := LinkButton (e.Item.Cells[4].Controls[0]);
Zeile 204: bDeleteButton.Attributes['onclick'] := 'javascript:return ' +
Zeile 205: 'confirm(''Are you sure you want to delete FAQ # ?'');';
Zeile 206:// e.Item.Attributes.Add('onclick',


Quelldatei: c:\inetpub\wwwroot\FB_Test\fb_test_seite.pas Zeile: 204

Stapelüberwachung:


[NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.]
System.Web.UI.WebControls.WebControl.get_Attribute s()
fb_test_seite.TWebForm1.dgTest_ItemDataBound(Objec t sender, DataGridItemEventArgs e) in c:\inetpub\wwwroot\FB_Test\fb_test_seite.pas:204
System.Web.UI.WebControls.DataGrid.OnItemDataBound (DataGridItemEventArgs e)
System.Web.UI.WebControls.DataGrid.CreateItem(Int3 2 itemIndex, Int32 dataSourceIndex, ListItemType itemType, Boolean dataBind, Object dataItem, DataGridColumn[] columns, TableRowCollection rows, PagedDataSource pagedDataSource)
System.Web.UI.WebControls.DataGrid.CreateControlHi erarchy(Boolean useDataSource)
System.Web.UI.WebControls.BaseDataList.OnDataBindi ng(EventArgs e)
System.Web.UI.WebControls.BaseDataList.DataBind()
fb_test_seite.TWebForm1.BindGrid() in c:\inetpub\wwwroot\FB_Test\fb_test_seite.pas:289
fb_test_seite.TWebForm1.Page_Load(Object sender, EventArgs e) in c:\inetpub\wwwroot\FB_Test\fb_test_seite.pas:181
System.Web.UI.Control.OnLoad(EventArgs e)
System.Web.UI.Control.LoadRecursive()
System.Web.UI.Page.ProcessRequestMain()
ich bin entweder betriebsblind oder zu müde...
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz