如何更改WPF控件的缩放,但仍占用全部空间?
在WPF应用程序中,我使用的是一个web浏览器控件(实际上它是awesomium,但我不确定这是否重要)。此控件正在使用某种互操作 我希望我的应用程序能够“缩小”网络内容。web内容应减少到其大小的50% 如果仅应用如何更改WPF控件的缩放,但仍占用全部空间?,wpf,Wpf,在WPF应用程序中,我使用的是一个web浏览器控件(实际上它是awesomium,但我不确定这是否重要)。此控件正在使用某种互操作 我希望我的应用程序能够“缩小”网络内容。web内容应减少到其大小的50% 如果仅应用ScalTransform,则浏览器控件将缩小为exptected(所有内容都较小),但控件的可见边界也将缩小 我想让web控件占据其容器的全部可用位置。如何做到这一点 我现在已经做到了: <Canvas SizeChanged="Canvas_SizeChanged"
ScalTransform
,则浏览器控件将缩小为exptected(所有内容都较小),但控件的可见边界也将缩小
我想让web控件占据其容器的全部可用位置。如何做到这一点
我现在已经做到了:
<Canvas SizeChanged="Canvas_SizeChanged"
MinWidth="100"
MinHeight="100">
<Custom:WebControl x:Name="browser"
RenderTransformOrigin="0,0"
Width="100"
Height="100">
<Custom:WebControl.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="0.5"
ScaleY="0.5" />
<SkewTransform />
<RotateTransform />
<TranslateTransform />
</TransformGroup>
</Custom:WebControl.RenderTransform>
</Custom:WebControl>
</Canvas>
这是工作,有点低效。我想知道是否有更好的地方可以这样做(纯XML?)这个答案适用于1.7版RC3(可用)
- Awesomium.NET WPF
实际上是纯WPF(当WebControl
设置为ViewType
时,这是默认值)Offscreen
- 请检查您正在尝试执行的操作的示例
private void Canvas_SizeChanged(object sender, SizeChangedEventArgs e)
{
browser.Width = e.NewSize.Width * 2;
browser.Height = e.NewSize.Height * 2;
}