2012-01-08 11 views
4

ウィンドウを示したことがない私はHiddenに、メインウィンドウのVisibilityプロパティを設定し、Window_Loadedに次のように追加しました:設定可視性が再び

private void Window_Loaded(object sender, RoutedEventArgs e) 
    { 
     this.Visibility = System.Windows.Visibility.Visible; 
    } 

しかし、それは表示されません。窓。これの具体的な理由は何ですか?

答えて

9

ウィンドウが表示されるまでロードされません。コードはロードされるまで表示されません。 obivouslyこのように動作することはできません、右か?

+1

@Programmer私は本当にとにかくこのような何かをやってのポイントが表示されていないが、あなたはCollapsed' 'にウィンドウの初期表示を設定したい場合は、' Loaded'イベントがトリガーされます。 –

0

これも問題がありましたが、メインウィンドウでの表示のみを変更するとH.Bとして機能しません。指摘した。私の場合は、完全にロードされるまでウィンドウを表示しないようにしたかったので、WindowオブジェクトのShow()関数とHide()関数と共に、ここでリンクしたプロパティを使用してウィンドウを表示できました。ウィンドウオブジェクトを初期化すると、隠されたの可視性を設定しない場合は System.Windows.Window.ShowActivated

  1. 、代わりに偽this.ShowActivated = false;
  2. にShowActivatedプロパティを設定し、次のステップ
  3. に続くウィンドウオブジェクトthis.Hide();に隠す()関数を呼び出しますあなたの元の例から、あなたの窓ロード機能で
  4. 呼び出すthis.Show();

thisの参照が期待どおりに機能しないWPFアプリケーションでも可能ですが、この場合はXAMLに移動してウィンドウのnameプロパティを見つけてください。その名前でコードからウィンドウを参照できるはずです。 Ex。

<Window x:Name="MainWindow"> 
//Code Behind Below 
MainWindow.ShowActivated = false; 
関連する問題