2012-06-26 40 views
0

我在學習如何使用支持的方向來更改文本塊中的值或文本。我想要的是,當設備傾斜到橫向模式時,文本塊應顯示「再見」,當它傾斜到肖像模式時,應該說「歡迎」如何在Windows Phone 7上使用屏幕方向顯示文字?

我想知道應該使用什麼關係運算符在if()語句中,以便它提供正確的輸出。

我應該在if()內使用什麼?

  1. if(Orientation.Equals(SupportedOrientation.Portrait)) { // display "Welcome"}
  2. if(SupportedOrientation.Equals(SupportedPageOrientation.Portrait)) {// display "Welcome"}

如何使用方向來改變我想要的任何值?

回答

1

如果您要在頁面類中編寫代碼,則可以使用PhoneApplicationPage類的OrientationChanged事件或覆蓋OnOrientationChanged方法。

this.OrientationChanged += new EventHandler<OrientationChangedEventArgs>(MainPage_Orientationchanged) 

void MainPage_OrientationChanged(object sender, OrientationChangedEventArgs e) 

    { 
    if (orientation == PageOrientation.LandscapeLeft || 
    orientation == PageOrientation.LandscapeRight) 

    { 

    textblock.text = bye; 

    } 

if (orientation == PageOrientation.PortraitLeft || 
    orientation == PageOrientation.PortraitRight) 

{ 

    textblock.text = welcome; 
} 

} 
+0

謝謝!那工作。我有更多的問題,而不是LandscapeLeft和LandscapeRight,我修改代碼爲 如果(orientation == PageOrientation.Landscape),我試圖執行,它不起作用!爲什麼它不工作?不「景觀」包括左右兩側的景觀? –

+0

事件僅在將方向更改爲左側或右側風景後纔會觸發。如果向左轉動,則事件將檢查橫向方向是左向還是右向,因爲這是方向控制的默認行爲。如果你只是簡單地提到景觀,那麼方向控制無法找到運動是從右邊還是左邊,這就是爲什麼它不起作用。對於在頁面中使用許多UI控件的情況,我們應該對左右橫向方向進行不同的控制調整,所以它的必須要檢查左右 –

+0

好吧!那麼我們什麼時候使用Orientation.Landscape? –

相關問題