2010-11-23 1 views
0

プログラムを見たり使用したりする前に、ユーザーから何らかの情報を得たいと思っていました。現在私はちょうど黒い矩形の前にテキストボックスで自分のGUIを隠している。情報がボックスに入力されると、私はそれを持っており、矩形の可視性は崩壊するように設定されます。プログラムがCで実行されているときにWPF要素を削除する

私はプログラムの最初の段階でそれらを必要としています。私はそれらがまだ存在し、崩壊している間に記憶を取っていると仮定しています。私はそれらのために使用していない一度完全に要素を削除する方法はありますか?

答えて

0

ポップアップするモーダルウィンドウを持っていないのはなぜそのを閉じたときに、それが標準のUI要素のいくつかの並べ替えを使用した例

Window win = new MyPopupWindow(); 
win.ShowDialog(); 
0

のために自動的に

視覚的/論理ツリーの形削除されます上記のモーダルウィンドウやSilverlightのChildWindowのほうが良いでしょう。

しかし、折りたたまれた要素は、メモリに問題を起こしてはいけません。レンダリングパイプラインから取り出されます。しかし、不透明度= 0は、まわりにくっつくでしょう。 本当に削除したい場合は、親パネル(Gridなど)にRemove()メソッドを持つChildrenコレクションがあります。

0

これは、次の例のようにスプラッシュ画面用の手法で行うことができます。

2つの違い:代わりにショーの

  1. 利用にShowDialog()()(常にトップと実行をフリーズ上の)ウィンドウのモジュラーを作ります。

  2. メインスレッドで実行します。別のスレッドでは実行しません。

例:

Hide WPF Window Until Fully Loaded

しかし、あなたはそれがユーザーフレンドリー思えないので、あなたのアプローチを再考することを検討してください。

関連する問題