如何在wp silverlight 8.1中的页面底部显示userControl

时间:2016-05-04 09:56:47

标签: c# silverlight windows-phone

我有一个用户控件。我想在我的应用程序的所有页面的底部显示它。 我像这样设置了verticalOffset。

if (App.Current.Host.Content.ScaleFactor==150)
    popUp.VerticalOffset = App.Current.Host.Content.ActualHeight - 230;// 160;
else
    popUp.VerticalOffset = App.Current.Host.Content.ActualHeight - 160;

其中160是我的userControl高度。

我不知道确切的方法。无论如何,它适用于某些具有软键的设备。 某些满足if条件且没有softKey的设备会在页面的70/72像素底部创建一个间隙。

是否可以检查silverlight的软键可用性或在底部显示用户控件?

1 个答案:

答案 0 :(得分:0)

只需要在页面构造函数上添加sizeChanged事件 然后像这样设置popUp的verticaloffset。

Popup popUP = new Popup();
public MainPage()
{
   InitializeComponent();
   this.SizeChanged += MainPage_SizeChanged;
 }

double systemTrayHeight =30;
double popUPHeight = 200;
private void MainPage_SizeChanged(object sender, SizeChangedEventArgs e)
{
    if (popUP.IsOpen)
         popUP.IsOpen = false;
     popUP.Child = new PopUP();
     popUP.VerticalOffset = e.NewSize.Height + systemTrayHeight - popUPHeight;
     popUP.IsOpen = true;
}

sample project