我有一个主窗口,其中有一个按钮,单击它,一个新窗口出现,但
WindowStartupLocation = System.Windows.WindowStartupLocation.CenterOwner
使其出现在主屏幕的中心。该按钮是使用DockingManager创建的节的一部分,因此它并不总是位于一个位置,具体取决于用户将其固定的位置。有没有办法让窗口出现在按钮旁边,看起来像一个弹出菜单?
balp4ylt1#
弹出窗口比加载一个新窗体并将其显示在按钮旁边要好。但是,如果你坚持使用你的场景,你可以先获得按钮相对于主窗体的位置,然后相应地设置新窗口的位置。要做到这一点,请尝试以下代码:
Point buttonPosition = myButton.TranslatePoint(new Point(0, 0), ButtonWindow); MyWindow wnd = new MyWindow(): Wnd.Left = buttonPosition.Left; Wnd.Top = buttonPosition.Top; Wnd.Show();
1条答案
按热度按时间balp4ylt1#
弹出窗口比加载一个新窗体并将其显示在按钮旁边要好。但是,如果你坚持使用你的场景,你可以先获得按钮相对于主窗体的位置,然后相应地设置新窗口的位置。要做到这一点,请尝试以下代码: