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
Antwort Antwort
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, 21: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
Benutzerbild von r_kerber
r_kerber

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

Re: Abfrage bei Delete im Datagrid

  Alt 26. Aug 2005, 12:10
Schade noch keine Antwort. Da werde ich diesen Thread mal ganz unauffällig nach oben schubsen...
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Abfrage bei Delete im Datagrid

  Alt 27. Aug 2005, 22:05
Hallo Rainer,

tritt der Fehler auch auf, wenn du die Kommentarzeichen vor:

bDeleteButton := LinkButton.Create; wegnimmst?
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Benutzerbild von r_kerber
r_kerber

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

Re: Abfrage bei Delete im Datagrid

  Alt 28. Aug 2005, 15:34
Zitat von MrSpock:
tritt der Fehler auch auf, wenn du die Kommentarzeichen vor:

bDeleteButton := LinkButton.Create; wegnimmst?
Ja. Die Zeile steht da ja nicht umsonst, habe ich auch ausprobiert. Und ich habe auch bDeleteButton.Attributes['onclick'].Add() ausprobiert...
  Mit Zitat antworten Zitat
Antwort Antwort


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 19:40 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