用拇指拖动wpf窗口:它可以透明吗?

时间:2009-03-09 12:03:01

标签: wpf slider drag

我一直在测试Blu,我注意到我可以拖动窗口。这个窗口是透明的。我尝试用拇指做同样的事,但我不知道如何让它变得透明。窗口的其余部分是透明的,但拇指不是。

有没有办法让拇指透明,还是应该使用其他技术?

我使用此活动:

 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);
    }

谢谢

2 个答案:

答案 0 :(得分:8)

您可以使用“不透明度”属性隐藏拇指控件。

Opacity =“1”(完全可见)

Opacity =“0”(不可见)

我的申请中的样本

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

        </Thumb>

答案 1 :(得分:5)

不确定我是否正确理解了您的问题,但是要拖动一个wpf窗口,您需要在表单(或表单本身)上键入组件的click事件处理程序:

this.DragMove();

无需自行实现拖动功能。


更新:小例子:创建一个窗口,在其中放置一个按钮。连接窗口的MouseDown和单击按钮:

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

完美无缺,您可以拖动窗口,按钮继续工作......