【发布时间】:2015-11-11 16:06:46
【问题描述】:
似乎 WPF WebBrowser 控件的内置最小高度为 150。
您可以明确设置高度,它会遵守,但在 * 布局中它不会调整到小于 150。
简化我的 xaml 看起来像这样(去除颜色、边框等)
edit1:添加了ItemsControl(似乎导致这个或与问题有关,网络浏览器是否加载html文件无关紧要)
<ItemsControl>
<ItemsControl.Template>
<ControlTemplate>
<ScrollViewer x:Name="ScrollViewer" VerticalScrollBarVisibility="Hidden" HorizontalScrollBarVisibility="Auto">
<ItemsPresenter />
</ScrollViewer>
</ControlTemplate>
</ItemsControl.Template>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<Grid Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<WebBrowser Grid.Row="0" Name="WebBrowserStartPage" Source="pack://siteoforigin:,,,/StartPage.html" />
<ListBox Grid.Row="1" />
</Grid>
</ItemsControl>
设置 MinHeight 似乎被忽略了。
还有其他方法可以设置调整大小的最小高度吗?
【问题讨论】:
-
我刚刚测试了您的示例,它按预期工作。 ListBox 和 WebBrowser 将大小调整为 0 的高度。顺便说一句,您在 itemsSource 绑定中缺少大括号。
-
似乎我已经剥离了大部分 xaml...周围还有很多其他用户控件和主题 devexpress 控件...我将尝试在一个小型测试应用程序中重现这一点,谢谢提示!
-
似乎是 ItemsControl 导致了这个问题...... Grid 通常在 UserControl 中,而 ItemsControl 加载了这些 UserControls 的 List...... 我只是试图将代码减少到最重要的部分...
标签: c# wpf webbrowser-control