我在我的wpf应用程序中托管了一个ocx控件(用于绘图的图形控件)。问题是,当调整主窗口的大小时,它不会调整大小。该控件倾向于保持其原始大小,并且当调整主窗口的大小时,ocx控件将被裁剪而不是调整大小。这个问题有什么解决办法吗?
发布于 2010-07-07 21:02:34
据我所知,ocx控件不会像普通的WPF控件那样经历通常的排列/测量周期。也许最好的做法是处理窗口或面板的SizeChanged事件(无论包含控件的是什么),并适当地调整ocx控件的大小。例如,如果控件驻留在名为gridGraph的网格中:
public Window1()
{
InitializeComponent();
gridGraph.SizeChanged +=
new SizeChangedEventHandler(gridGraph_SizeChanged);
}
void gridGraph_SizeChanged(object sender, SizeChangedEventArgs e)
{
Size size = e.NewSize;
myOcx.Width = size.Width;
myOcx.Height = size.Height;
}您的里程可能会有所不同-您将不得不调整控制,以适应您的特定容器和设置。
https://stackoverflow.com/questions/3191975
复制相似问题