边界失败!!我在XAML代码中有一个边界,它是在主画布后面定义的:
<Canvas xmlns="http://schemas.microsoft.com/client/2007"
... VerticalAlignment="Top" HorizontalAlignment="Center">
<Border x:Name="JohnnyBorder" BorderThickness="1" Margin="0,0,0,0" BorderBrush="#FF677B8B" VerticalAlignment="Stretch"
HorizontalAlignment="Center">
在代码中,我将边界定位为:
JohnnyBorder = (Border)appCanvas.FindName("JohnnyBorder");
JohnnyBorder.Height = App.Current.Host.Content.ActualHeight;
JohnnyBorder.Width = App.Current.Host.Content.ActualWidth;
但它不起作用。JohnnyBoarder的底线是比浏览器底部高出几个百分比。为什么?
我认为让你的Border
在你身边Canvas
:会更自然
<Border>
<Canvas>
...
</Canvas>
</Border>
默认情况下,Border
将填充页面,Canvas
将填充Border
。
承载silverlight应用程序的页面可能没有为silverlight应用程序提供100%的高度。检查承载silverlight应用程序的html或aspx文件,确保其高度设置为100%。
<form id="form1" runat="server" style="height:100%">
<div id="silverlightControlHost">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">