我在WPforms选项卡控件(在WPF窗口中)内的Windowsformshost中有一个Winform控件。
根据Winform控件的绘制内容,有时它会超出WindowsFormsHost的范围,切断一些图像。
有没有办法确保控件保持在边界内,或重绘/缩放图像以保持在边界内?
编辑:我实际上能解决这个问题。在我将Winform控件复制到WindowsFormsHost之前,我做了:jdbc
整个图像集自身缩放以保持在主机控制范围内。
编辑2:看起来没有必要 this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.PerformAutoScale();
。只需设置AutoScaleMode就可以解决它。
答案 0 :(得分:0)
我已经成功地使用了几种不同的形式。以下选项对我来说都有用,以确保Form中的所有Winform控件都显示在WindowsFormsHost的范围内:
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
或
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
有时(取决于控件包含的内容)
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
除了简单地设置AutoScaleMode之外,没有必要调用任何其他大小调整功能/方法。