1

ウィンドウを移動したいアプリケーションがあります。問題は、プレビュー マウスを上げたすべての画像が機能しないことです。

これはwindoイベントです:

 private void Window_MouseDown(object sender, MouseButtonEventArgs e)
 {
     DragMove();
 }

これは画像イベントです:

 private void image1_PreviewMouseUp(object sender, MouseButtonEventArgs e)
 {
     MessageBox.Show("WTF IS WPF?");
 }

DragMove 関数を削除すると、画像イベントが機能します。

4

1 に答える 1

3

なぜ DragMove() を常に実行するのですか?

MouseButtonState _mouseButtonState;
private void Window_MouseDown(object sender, MouseButtonEventArgs e)
{
    _mouseButtonState = e.ButtonState;
}

private void Window_MouseMove(object sender, MouseEventArgs e)
{
    if(_mouseButtonState == MouseButtonState.Pressed)
        DragMove();
}

image1_PreviewMouseUp にもチェックを入れます

private void image1_PreviewMouseUp(object sender, MouseButtonEventArgs e)
{
    if(_dragging) return;

    //else do your preview
}
于 2012-11-29T20:19:40.827 に答える