将.net控件附加到没有VSTO(但Excel-DNA)的工作表

我正在尝试做一些我不太确定的事情。 我想使用一个.net第三方库,提供良好的Winform图表控件,以replaceExcel工作表中的一些(非常复杂和丑陋的)VBA生成的图表。

我正在使用Excel-DNA(这是很棒的顺便说一句),我设法做了各种各样的事情,比如以同步和asynchronous方式显示Winform窗体(感谢https://github.com/Ron-Ldn / DotNetRefEdit )

到目前为止,当我激活一个特定的工作表时,我设法让我的非模态窗体显示出来,并且通过设置它的parent和topMost属性,它具有预期的行为。 但放置它是一个真正的痛苦(不同的屏幕尺寸),我想知道是否有办法正确做到这一点

所以这里的问题是:我可以以某种方式附加一个.Net窗体或一个自定义控件到一个工作表,甚至可以把它定位到一个特定的单元格? 它必须是非模态的,只有当我们在特定的表单上时才会显示。

我知道VSTO可以将控件添加到工作表,但我不想使用VSTO。 我也知道,我可以创build自己的ActiveX控件,并将其注册,然后将其放置在Excel中,就像我使用另一个button控件一样,但是根据我所读的内容,这似乎很危险

感谢您的所有想法或build议

考虑创build一个自定义任务窗格(CTP)固定在Excel工作簿(工作表)的右侧。

有关如何在ExcelDNA中执行此操作的更多信息,请参见CTP上的ExcelDNA GitHub示例 。