1
我在我的WPF项目中使用CefSharp。我加入了CefSharp.Wpf.WebView
类我MainWindow.xaml像这样:ContentControl没有显示没有指定宽度/高度
_webView = new WebView(url, _settings);
我的XAML布局看起来是这样的:
<Window x:Class="WPFContainer.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Test Project" Height="400" Width="930" Initialized="OnWindowInit" StateChanged="OnWindowStateChanged" Closing="OnWindowClose">
<DockPanel Name="MainDockPanel" Height="400" Width="930">
<Grid VerticalAlignment="Top" HorizontalAlignment="Left" ShowGridLines="True" Name="mainGrid" >
<Grid.ColumnDefinitions>
<ColumnDefinition Name="col1" Width="600" />
<ColumnDefinition Name="col2" Width="330"/>
</Grid.ColumnDefinitions>
</Grid>
</DockPanel>
</Window>
如果我删除Grid
并添加webView
到DockPanel
直接,它显示得很好。但如果我尝试在Grid
中将webView
添加到col1
,则不会显示。它将显示在网格列中,如果我指定宽度/高度,但HorizontalAlignment.Stretch
不起作用,我需要100%的宽度和高度!
我对加入webView
到不起作用网格代码:
mainGrid.Children.Add(_webView);
Grid.SetColumn(_webView, 0);
那么如果我设置它显示的宽度和高度怎么办?还有另一种方法来设置宽度= 100%等? –
此链接更详细地解释了wpf布局http://msdn.microsoft.com/en-us/library/ms745058.aspx。通常,自定义控件被写入消耗尽可能多的空间,或者它们在测量中给出的所有空间都通过。专家组的工作(在这种情况下是一个网格)限制它给孩子的空间量,并且将它们与自己相关联。 – user1834059