仅在纵向模式下显示AdControl

时间:2012-08-29 00:12:16

标签: windows-phone-7 advertising

当手机处于横向模式时,我的应用程序中没有足够的屏幕空间来显示AdControl。我在OnOrientationChanged事件处理程序中使用以下(简化)代码,在输入横向模式时从网格的第1行中删除AdControl,并在输入纵向模式时将其添加回来:

if (this.Orientation == PageOrientation.LandscapeLeft || 
    this.Orientation == PageOrientation.LandscapeRight) {
    LayoutRoot.Children.Remove(myAdControl);
    LayoutRoot.RowDefinitions.RemoveAt(1);// remove row to make space
} else {
    LayoutRoot.RowDefinitions.Add(adRow);// previously constructed 80 px high RowDefinition
    LayoutRoot.Children.Add(myAdControl);
    Grid.SetRow(myAdControl, 1);
}

这似乎在我的测试中有效,但我在documentation中看到AdControl类“一旦设置,就不应该更改AdControl的父级。”我在这里做的是打破AdControl吗?

1 个答案:

答案 0 :(得分:1)

Here is a new solution,当手机方向更改为横向时,广告控件可以保持静止。它使用一种新的控件,即使在旋转时也能将广告控制保持在“底部”(在横向时为左或右)。

10秒概述是创建网格布局并将AdControl移动到适用于方向的行/列组合。 The blog包含所有细节。