我已经通过COM-Interop将WinForms控件编写为ActiveX,到目前为止它在MS Access中运行良好。 但问题是在显示视图中访问表单与设计视图中的表单大小不同。 我试图通过获取ContainerControl来设置Initialize Size。但我没有返回正确的价值。
public DummyCtrl()
{
this.Dock = DockStyle.Fill;
this.AutoSize = true;
var axC = (Control)this.GetContainerControl();
this.Width = axC.Width;
this.Height = axC.Height;
InitializeComponent();
}
GetContainerControl()
包含"ControlAxSourcingSite[WFControl.DummyCtrl]"
对象。
我不确定如何在初始化元素时获得正确的值。任何想法?
答案 0 :(得分:0)
所以我自己找到了。 ;)
正确的方法是:
public DummyCtrl()
{
this.Size = PreferredSize;
InitializeComponent();
}
我建议这可能适用于每个Forms Control。 祝你有美好的一天......