0

我想在 excel 应用程序中显示一个 WinForm。但是这个窗口应该是透明的。为此,我执行以下操作。

  private void InitializeComponent()
    {
        // other form/ control init code
        this.BackColor = System.Drawing.Color.White;
        this.TransparencyKey = System.Drawing.Color.White;
        // other form/ control init code
    }

现在,我想将此表单作为 excel 应用程序的子项,为此我使用以下代码。

 protected override void OnLoad(EventArgs e)     
 {
   // PINVOKE CALL
   User32.SetParent(FORMHANDLE, EXCELAPPHANDLE);   
 }

设置后表单消失,因为如果我取消注释上面的代码,我可以看到具有透明背景的表单。

4

0 回答 0