반응형
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
this.LocationChanged += MainWindow_LocationChanged;
}
private void MainWindow_LocationChanged(object? sender, EventArgs e)
{
Point position = btnTest.PointToScreen(new Point(0, 0));
lblPosition.Content = $"Position From Screen ({position.X} , {position.Y})";
Matrix matrix = PresentationSource.FromVisual(btnTest).CompositionTarget.TransformToDevice;
double scaleX = matrix.M11;
double scaleY = matrix.M22;
Point finalPosition = new Point(position.X / scaleX, position.Y / scaleY);
lblPosition2.Content = $"Sacled Position From Screen ({(int)finalPosition.X} , {(int)finalPosition.Y})";
}
}
반응형
'[====== Development ======] > C#' 카테고리의 다른 글
WPF - 여러개의 이미지 합치기 (0) | 2023.04.25 |
---|---|
C# List에서 중복 제거한 리스트 만들기 (0) | 2023.04.06 |
C# JSON Array 읽는 방법 (0) | 2023.03.28 |
C# 리스트를 포함한 Json 만들기 (0) | 2023.03.28 |
C# 구조체 리스트 정렬 (0) | 2023.03.20 |