C# 控件.PointToScreen 遇到的问题

  先上一点代码。

//Btn 是已知的button
Point pt = Btn.PointToScreen(new System.Windows.Point(0, 0));
MessageBox.Show("Button " + pt.X.ToString() + " " + pt.Y.ToString());

  代码运行到这里的时候就会弹出一个消息框显示 Btn 左上角坐标。

当程序最小化时,却出现了。

  C# 控件.PointToScreen 遇到的问题

  由于具体原因未知,暂添加代码判断该坐标位于屏幕内(width: 0 ~ height - 1, height : 0 ~ height - 1)

Point pt = RunBtn.PointToScreen(new System.Windows.Point(0, 0));
                
if (pt.X > 0 && pt.Y > 0
    && pt.X <= SystemParameters.PrimaryScreenWidth
    && pt.Y <= SystemParameters.PrimaryScreenHeight)
{
    MessageBox.Show("Button " + pt.X.ToString() + " " + pt.Y.ToString());
}

 

C# 控件.PointToScreen 遇到的问题

上一篇:WindowsForm实现警告消息框


下一篇:测试右移之日志收集与监控