4

ご挨拶、

親ウィンドウの横に子ウィンドウをドッキングさせたいと思います。親ウィンドウを移動すると、子ウィンドウも移動する必要があります。以下の画像は、私が達成したいことを説明しているはずです:http:
//img689.imageshack.us/img689/1305/childdockedwindow.jpg
誰かが私を助けてくれませんか。私はWPFで書いています。誰かがこれを行う方法についてアイデアを持っていますか?

4

1 に答える 1

1

メイン ウィンドウでWindow.LocationChangedイベントとイベントを処理します。Window.SizeChangedこれらのイベントのいずれかが発生すると、子ウィンドウの新しい位置が計算されます。

これがアイデアです:

var mainWindow = ...;
var childWindow = ...;

var handler = new EventHandler(() =>
{
  childWindow.Top = mainWindow.Top;
  childWindow.Left = mainWindow.Left + mainWindow.Width;
});

mainWindow.LocationChanged += handler;
mainWindow.SizeChanged += handler;

handler子ウィンドウをドッキングする必要がなくなったとき、または子ウィンドウが表示されなくなったときに、両方のイベントから削除するコードが必要になる場合もあります。

于 2010-02-12T15:52:11.397 に答える