2012-12-03 6 views
6

Windows Phone向けのアプリケーションを作成していますが、向きを変えたときにメインテキストボックスのInputScopeを変更しようとしていますキーボードはオートコレクトバーなしでランドスケープのスペースを少なくします)、もう一度戻ってください。WP7/8は、C#を使用したイベントの後に動的にInputScopeを変更します

私は2番目のテキストボックスで実験を行い、向きを変えて他のテキストボックスを隠していましたが、これはうまく動作しませんでした。 :P

私はこれを動作させることができない場合がありますオリエンテーションの周りのページの要素の位置を変更するにはうまくいきましたOrientationChangedEvent引数の後にInputScope値を変更する方法が見つからない場合があります。

私はまだC#とXAMLでアプリケーションを開発するのがかなり新しいです。私はあなたの人が私に見せてくれるテキストボックスのInputScopeを簡単に設定できることを願っています!

-EDIT:ここでは、イベントハンドラだ、すべてが内部に絶対に罰金が動作しますが、私はInputScopeとは何かを追加しようとするどのような方法は、:(

private void MainPage_OrientationChanged(object sender, OrientationChangedEventArgs e) 
    { 
     if ((e.Orientation & PageOrientation.Portrait) == (PageOrientation.Portrait)) 
     { 
      //Portrait 
      PlaceholderText.FontSize = 29.333; 
      PlaceholderText.Padding = new Thickness (0,0,0,0); 
      MainTweet.FontSize = 29.333; 
      MainTweet.Padding = new Thickness (12,8,12,8); 
      Counter.Margin = new Thickness (0,212,28,0); 
     } 
     else 
     { 
      //Landscape 
      PlaceholderText.FontSize = 23; 
      PlaceholderText.Padding = new Thickness (8,0,0,0); 
      MainTweet.FontSize = 22; 
      MainTweet.Padding = new Thickness (16,8,180,0); 
      Counter.Margin = new Thickness (0,-18,28,0); 
     } 
    } 

MainTweet.Text動作しないテキストボックスであることキーボードはデフォルトでは焦点が合っていますが、ページが横向きに変わったときに、これを "Search" InputScopeから別のもの、おそらく "URL"に変更することができれば嬉しいです。オリエンテーションが変更されたとき、それはきれいに見えないかもしれないことを感謝します...

+0

私たちはどこに助けてくれるかを確認するコードを投稿できますか? –

+0

近日発売予定です! – huntie

答えて

5

複数の "オリエンテーション" statエニュメレーションではPortraitLandscapeだけではありません。私は(Windowsの携帯電話7.5エミュレータ上の)スコープを変更するために、次は働いた:

if (e.Orientation == PageOrientation.Landscape 
    || e.Orientation == PageOrientation.LandscapeRight 
    || e.Orientation == PageOrientation.LandscapeLeft) 
{ 
    InputScope inputScope = new InputScope(); 
    InputScopeName inputScopeName = new InputScopeName(); 
    inputScopeName.NameValue= InputScopeNameValue.Url; 
    inputScope.Names.Add(inputScopeName); 
    textBox1.InputScope = inputScope; 
} 

つまり、あなたのMainPage_OrientationChangedイベントハンドラにそのドロップしたいです。

+0

非常に有益でありがとうございます!私は今それを働かせて、見ます:) – huntie

関連する問題