我在UserControl的面板上有一个带按钮的UserControl(这是使用TableLayoutPanel设置的自定义日历的一部分,而UserControl则是显示日历中每一天的内容)。单击按钮将显示一个对话框。我希望对话框显示在与UserControl相同的位置。我将对话框的StartPosition属性设置为“手动”。
dlgStatuses DlgStatuses = new dlgStatuses(this);
ucDate ucParent = (ucDate)((Button)sender).Parent.Parent; //This is the UserControl
int x = PointToScreen(ucParent.Location).X;
int y = PointToScreen(ucParent.Location).Y;
DlgStatuses.Location = new Point(x, y);
DlgStatuses.ShowDialog();
这无法正常工作。我尝试了PointToClient,它也失败了。我也尝试过,但失败了:
dlgStatuses DlgStatuses = new dlgStatuses(this);
ucDate ucParent = (ucDate)((Button)sender).Parent.Parent;
DlgStatuses.Location = ucParent.Location;
DlgStatuses.ShowDialog();
所以我要寻找的是在与ucParent相同的位置显示DlgStatuses。