2011-11-13 108 views
1

我正在用C#編寫Windows Phone應用程序。我有一個設置OrientationLock,應該鎖定屏幕縱向。不幸的是,我無法讓我的生活得到它的工作。設置保存和一切,我只是不知道如何改變在C#中支持的方向。這裏是我試圖使用的代碼:更改支持的方向

public MainPage() 
{ 
    InitializeComponent(); 

    if (AppSettings.Default.OrientationLock) 
    { 
     this.SupportedOrientations = SupportedPageOrientation.Portrait; 
    } 
    else 
    { 
     this.SupportedOrientations = SupportedPageOrientation.PortraitOrLandscape; 
    } 
} 

謝謝。

+0

在仿真器和Mango設備上工作得很好。 –

+0

什麼不起作用? –

+0

不確定,如果設置已設置,則不鎖定方向。 – JacobTheDev

回答

4

最後,如果從設置頁面返回,則必須將代碼移動到覆蓋的OnNavigatedTo方法(在頁面類中)以更新支持的方向......構造函數僅調用一次(如果頁面不是邏輯刪除的)。

+0

啊。好的。所以當設置改變時,它也必須改變。謝謝,我會着眼於此。 – JacobTheDev

+0

是的。這種方式只會檢查一次設置(在應用程序啓動時),如果您導航到設置頁面,更改它並導航回頁面,它將不會被更新...如果您將它移動到OnNavigatedTo,它將更新設置每次你不僅瀏覽一次頁面(當構造函數被調用時) –