3

Bluをテストしていて、ウィンドウをドラッグできることに気付きました。このウィンドウは透明です。Thumb でも同じことをしようとしましたが、透明にする方法がわかりません。ウィンドウの残りの部分は透明ですが、つまみは透明ではありません。

親指を透明にする方法はありますか、それとも別の手法を使用する必要がありますか?

私はこのイベントを使用します:

 private void DragThumb_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e)
    {
        Canvas.SetLeft(this, Canvas.GetLeft(this) + e.HorizontalChange);
        Canvas.SetTop(this, Canvas.GetTop(this) + e.VerticalChange);
    }

ありがとうございました

4

2 に答える 2

8

Opacity 属性を使用して、サム コントロールを非表示にすることができます。

Opacity="1" (完全に表示)

また

Opacity="0" (見えない)

私のアプリケーションからのサンプル

        <Thumb Name="myThumb"
               Width="10"
               Height="10"
               DragDelta="onDragDelta"
               DragStarted="onDragStarted"
               DragCompleted="onDragCompleted"
               Margin="5"
               HorizontalAlignment="Right"
               Opacity="1">

        </Thumb>
于 2009-03-10T15:26:02.457 に答える
5

あなたの質問を正しく理解しているかどうかはわかりませんが、wpf ウィンドウをドラッグするには、フォーム (またはフォーム自体) のコンポーネントのクリック イベント ハンドラーに入力する必要があるのは次のとおりです。

this.DragMove();

ドラッグ機能を自分で実装する必要はありません。


更新: 小さな例: ウィンドウを作成し、その中にボタンを配置します。ウィンドウの MouseDown とボタンの Click を次のように配線します。

    private void Window_MouseDown(object sender, MouseButtonEventArgs e)
{
    this.DragMove();
}
private void button1_Click(object sender, RoutedEventArgs e)
{
    MessageBox.Show("hey");
}

完全に機能し、ウィンドウをドラッグでき、ボタンは引き続き機能します...

于 2009-03-09T12:09:52.547 に答える