AddInEvents Class

AddIn Connection class, also handling Events from Excel (Open, Close, Activate)

Inheritance Hierarchy

Namespace: DBaddinAssembly: DBaddin in (DBaddin.dll)

Syntax

public class AddInEvents: IExcelAddIn

The AddInEvents type exposes the following members.

Constructors

ClassSummary
public constructorAddInEvents()

Methods

NameSummary
private methodApplication_AfterCalculate()
use Application_AfterCalculate to overcome the problem of auto-fitting formula ranges AFTER calculation (final column width is not available in dblistfetchAction procedure)
private methodApplication_SheetBeforeRightClick(Object, Range, ref Boolean)
Additionally to statically defined context menu in Ribbon this is needed to handle the dynamically displayed CUD DBMapper context menu entries (insert/delete)
private methodApplication_SheetChange(Object, Range)
Event Procedure needed for CUD DBMappers to capture changes/insertions and set U/D Flag
private methodApplication_WorkbookActivate(Workbook)
gets defined named ranges for DBMapper invocation in the current workbook after activation and updates Ribbon with it
private methodApplication_WorkbookBeforeClose(Workbook, ref Boolean)
Clean up after closing workbook, only set flag here, the actual cleanup is only done if workbook is really closed (in WB_Deactivate event)
private methodApplication_WorkbookDeactivate(Workbook)
Actually clean up after closing workbook
private methodApplication_WorkbookOpen(Workbook)
reset query cache, refresh DB functions and repair legacy functions if existing
private methodApplication_WorkbookSave(Workbook, Boolean, ref Boolean)
saves defined DBMaps (depending on configuration), also used to remove contents of DBListfunction results (data safety/space consumption) choosing functions for removal of target data is done with custom doc-properties
public methodAutoClose()
AutoClose cleans up after finishing addin
public methodAutoOpen()
connect to Excel when opening Addin
private methodcleanupHandlers()
COM cleanup for query table objects and command buttons inside their handlers
protected methodFinalize()
used for releasing com objects
public methodInitializeCBHandlers(Object)
assign click handlers to command buttons in passed workbook Wb
private methodInitializeQueryHandlers(Workbook)
initialize query handlers inside list objects for workbook wb, needed for catching refresh event to avoid sheetchange event execution
private methodmDeleteButton_Click(CommandBarButton, ref Boolean)
dynamic context menu item delete: delete row in CUD Style DBMappers
private methodmInsertButton_Click(CommandBarButton, ref Boolean)
dynamic context menu item insert: insert row in CUD Style DBMappers

Properties

NameSummary
private propertiesApplication
the application object needed for excel event handling (most of this class is dedicated to that)
private propertiesmDeleteButton
context menu delete button
private propertiesmInsertButton
context menu insert button

Fields

NameDescription
public fieldcolCommandButtons
collection of command button handlers for assigned DB modifiers
public fieldcolQueries
collection of query refresh handlers for query objects inside list objects
private fieldWbIsClosing
Flag for sharing closing state between Application_WorkbookBeforeClose and Application_WorkbookDeactivate (true for actually closed workbooks)