Dobrý den, osměluji se zeptat, jak vytvořit vlastní VB.NET user control, který bude obsahovat control poděděný z datagridview (obohacený o jednoduchý filter) a panel obsahující textbox a pár tlačítek, použitelný ve VBA(VB6) userformech (Excel VBA)? Zkoušel jsem donutit knihovnu, aby byla použitelná pro COM , manuální registraci a vygenerování typové knihovny, pokud šlo o knihovnu pouze s funkcemi, ale ne usercontrol ... na to jsem si netroufnul, ale rád bych to s nápovědou alespoň zkusil ... Objevil jsem power pack Interop Forms Toolkit , který se o většinu těchto věcí postará, takže finálně mohu rovnou přidat referenci na knihovnu ve VBA a používat ji. Příklady, kde jsou textboxy, tlačítka a žádný složitosti, fungují skvěle, ale jedná-li o rozšířené poděděné datagridview, tak InteropUserControl s vloženým controlem poděděným z datagridview nepřidá sloupce ani řádky voláním z VBA, metody sice proběhnou a sloupec se zdánlivě přidá, posléze se z kolekce Columns vytratí, celkově prapodivné chování, jako by byly dvě datagridview, ale to zobrazené se nepřekreslí. Poděděné datagridview v InteropFormu (knihovna s .net formulářem vyvolaným skrze tlb ve VBA) však mohu ovládat pomocí vlastních metod použitých z VBA , jedná se však o prvopokusy, tak nechci jásat předčasně. Avšak původním cílem byl user control. Jak vůbec správně začít, aby převzal usercontrol metody a vlastnosti datagridview, dále reference na System, Windows.Forms (tlb pro VBA - wraper) aj., abych se mohl dostat k metodám a vlastnostem, používat např. sloupce s metodami a vlastnostmi ve VB6(VBA). Nejlepší by byl nějaký příklad na dll s tlb výstupem pro VBA(VB6) bez InteropForm Tools se zakomponovaným self register mechanismem ... :) Stále zvažuji své reálné laické šance to dokázat. Předem děkuji za případnou pomoc a povzbuzení.
|