【VB.NET】WPF 타이틀 바가 없는 폼을 드래그로 이동한다

4490 단어 초보자VB. 네 tWPF

C #에서의 방법 만 쓰고있어 힘들다.



기본적으로 C#에서 할 수 있는 것은 VB.NET에서 할 수 있는 것을 알았는데 너무 정보가 너무 적어서 힘들다.
타이틀대로 본래의 타이틀 바가 있는 폼을 지우면서도 드래그를 하여 폼을 움직일 수 있도록 합니다.

xaml에서 양식을 지우고 이동하려는 도형을 설정합니다.



Window.xaml

<Window x:Class="Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d"
        WindowStyle="None"
        AllowsTransparency="True"
        Background="Transparent"
        Title="MainWindow" Height="308.033" Width="190.203">

    <Canvas>
        <Thumb DragDelta="MoveWindow" Width="186" Height="308" >
            <Thumb.Template>
                <ControlTemplate>
                    <Rectangle Width="180" Height="301" RadiusX="5" RadiusY="5" Fill="White" Margin="0,0,0,0" Stroke="Blue" />
                </ControlTemplate>
            </Thumb.Template>
        </Thumb>
    </Canvas>
</Window>




원래 양식 삭제



WindowStyle="None"→ 테두리 삭제
AllowsTransparency="True"→ 창을 투명하게 만들 수 있습니다.
Background="Transparent"→ 원래 창을 투명하게

조금 작은 양식을 Rectangle로 작성



: 사용자가 드래그할 수 있는 컨트롤 만들기
< Rectangle > : 드래그 할 도형으로 Rectangle을 지정

<Thumb>로 설정된 DragDelta 이벤트 설명



drag&drop.vb
Public Class Window1
    Public Sub MoveWindow(sender As Object, e As Primitives.DragDeltaEventArgs)
        Left += e.HorizontalChange
        Top += e.VerticalChange
    End Sub
End Class



이제 움직이게 되었습니다.

참고



C# 버전

좋은 웹페이지 즐겨찾기