Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   C# CollectionBase als Datasource: Löschereignis abfangen? (https://www.delphipraxis.net/77138-collectionbase-als-datasource-loeschereignis-abfangen.html)

Phoenix 15. Sep 2006 07:59


CollectionBase als Datasource: Löschereignis abfangen?
 
Folgendes Konstrukt:

Code:
        class PermissionList : System.Collections.CollectionBase
        {
           protected List<object> _deleteditems = null;

           public List<AMEF3BaseItem> DeletedItems
           {
               get
               {
                   if (_deleteditems == null)
                   {
                       _deleteditems = new List<object>();
                   }
                   return _deleteditems;
               }
               set { _deleteditems = value; }
           }

           public virtual void Remove(object value)
           { 
               // add object in List of deleted items prior to remove
               DeletedItems.Add(value);
               List.Remove(value);
           }
        }

        PermissionList permissions = null;
        BindingSource src = null;

        public frmPermissions()
        {
            InitializeComponent();

            grdPermissions.AutoGenerateColumns = false;

            permissions = new PermissionList();
            // hier wird die liste mit daten gefüllt
            permissions.Init();

            src = new BindingSource();
            src.DataSource = permissions;
            grdPermissions.DataSource = src;
        }
Das ganze funktioniert insofern nicht, als dass wenn ich einen Datensatz in der Grid lösche (Zeile markieren, entf drücken) er nicht in die Remove-Methode reinläuft. Bei näherer Betrachtung auch logisch, weils die auf der Basisklasse so gar nicht gibt.

Ich finde aber leider auch kein Event das beim Remove ausgelöst würde. Wie kann ich mich also am geschicktesten da reinhängen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:28 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