带有滚动条的 WPF 内的 VB6 ActiveX 控件

Posted

技术标签:

【中文标题】带有滚动条的 WPF 内的 VB6 ActiveX 控件【英文标题】:VB6 ActiveX Control Inside WPF With Scrollbars 【发布时间】:2009-03-09 08:37:01 【问题描述】:

我有一些旧版 VB6,托管在我的 WPF 应用程序中的 ActiveX 控件中。

尽管将控件放置在 DockPanel 中,它位于 ScrollViewer 中,但 VB6 显示在两者的边界之外,位于应用程序的其余部分之上。

有谁知道我怎样才能将 VB6 保留在 ScrollViewer 中而不会溢出到应用程序的其余部分?

ScrollViewer - 展开以填充一个区域

有一个子元素...

DockPanel - 固定为 VB6 窗体的高度和宽度

有一个子元素...

VB6

任何帮助或指导将不胜感激。

【问题讨论】:

【参考方案1】:

我认为您不能这样做,ActiveX 控件只会位于您包装它的任何 XAML 之上。作为一种解决方法,您可以尝试在 WinForms 中创建一个包含您的 ActiveX 控件并处理滚动,然后将其嵌入到 WPF 应用程序中。这有点hacky,如果您需要调整大小可能会很痛苦,但它应该可以工作:-)

【讨论】:

以上是关于带有滚动条的 WPF 内的 VB6 ActiveX 控件的主要内容,如果未能解决你的问题,请参考以下文章

使用 vb6 在 ActiveX dll 中裁剪图像

给 WPF Grid 一个 ScrollViewer 减去滚动条的宽度

如何增加 WPF ScrollViewer 中的滚动条宽度?

js控制div内的滚动条的位置

WPF中使用WebBrowser控件,怎么自定义它的滚动条样式

无法在包含多个组件的 VB6 项目中调试 ActiveX