2017-05-18 12 views
3

アプリケーションに複数のウィンドウがあり、すべてがタスクバーに表示されるように設定されているとします。アプリケーションのアイコン上にマウスを移動すると、各ウィンドウに1つのサムネイルが表示されます。十分なウィンドウがある場合、Windows 7はこれを、名前のついた背の高い、スクロール可能なウィンドウのリストに切り替えます。タスクバーに表示されるアプリケーションのサムネイルを並べ替える方法は?

この「サムネイル」リストをプログラムで並べ替える必要があります。特定のウィンドウがあるので、リストの先頭から2番目になりたいです。これどうやってするの?

ウィンドウの作成順序を変更することはできません(これは1つの解決策になりますが、残念ながら私が活用できるものではありません)。

答えて

3

これはかなり単純ですが、私は間違っていました。

再注文したいすべてのWindowオブジェクトに対して、ShowInTaskbarを設定すると、falseになります。次に、ウィンドウを表示する順序で、trueに戻します。 Windowオブジェクトを再作成する必要はありません。

私の場合、再注文中に、ウィンドウは一度点滅しました。このは私の現在のGFXドライバと関係があります。

注:テスト済みおよびWindows 7での作業とWindows 10

例:

using System.Windows; 

namespace WpfApp1 
{ 
    /// <summary> 
    /// Interaction logic for MainWindow.xaml 
    /// </summary> 
    public partial class MainWindow : Window 
    { 
     Window winA = new Window(); 
     Window winB = new Window(); 
     Window winC = new Window(); 

     public MainWindow() 
     { 
      InitializeComponent(); 

      winA.Title = "A";  
      winB.Title = "B"; 
      winC.Title = "C"; 

      winB.Show(); 
      winA.Show(); 
      winC.Show(); 
     } 

     private void Button_Click(object sender, RoutedEventArgs e) 
     { 
      winB.ShowInTaskbar = false; 
      winA.ShowInTaskbar = false; 
      winC.ShowInTaskbar = false; 

      winA.ShowInTaskbar = true; 
      winB.ShowInTaskbar = true; 
      winC.ShowInTaskbar = true; 

     } 
    } 
} 
+1

まあそれは同様にWindows 7の作業を行います。そして私はあなたが言及するちらつきを見ていない。しかし、いずれにせよ、良い、簡単な解決策。 – skybluecodeflier

+1

今すぐ奨励金を授与するのを待つことになります。より良い解決策が掲載された場合に備えて、私は賞金を手に入れます。 – skybluecodeflier

関連する問題