2009-07-15 85 views
3

我想獲得運行我的Silverlight應用程序的瀏覽器窗口的大小?我試過以下幾行,但總是返回零!如何在Silverlight應用程序中獲取客戶端大小?

public Page() 
    { 
     InitializeComponent(); 
     Initialize(); 

    } 

    public void Initialize() 
    { 

     WorldLimits.Y = Application.Current.Host.Content.ActualHeight; 
     WorldLimits.X = Application.Current.Host.Content.ActualWidth; 

     gameCore = new GameCore(this); 
     gameTime = DateTime.Now.TimeOfDay.TotalMilliseconds/1000; 

    } 
+0

什麼是你的用戶控件的標記看起來像Page.xaml抓住價值? – jcollum 2009-07-15 18:01:56

+0

我發現問題實際上。你建議放置一個調整大小的事件處理程序的竅門。如果您重新發布代碼,我可以將其標記爲正確的答案。 – Stefan 2009-07-15 18:16:42

回答

6

確保你在事件處理程序

public Page() 
{ 
    InitializeComponent(); 
    App.Current.Host.Content.Resized += new EventHandler(Content_Resized); 
} 

void Content_Resized(object sender, EventArgs e) 
{  
    this.Width = App.Current.Host.Content.ActualWidth; 
    this.Height = App.Current.Host.Content.ActualHeight; 
} 
相關問題