当父级是WPF时,将WinForms的子窗口居中

时间:2017-02-22 13:33:47

标签: c# wpf winforms

我知道设置子窗口属性以便在WinForms和WPF中显示。这可以通过根据WinForm / WPF设置父/所有者来完成。

但是最近,我遇到了一种情况,我需要将子窗口设置为父级的中心,其中Child是WinForms,父级是WPF。

我试过了,

newForm window = new newForm;
window.Owner = this;

这显然不会起作用,

window.StartPosition = FormStartPosition.CenterParent;

之后,

newForm window = new newForm;
window.MdiParent = this;

此外,还没有工作。

有关如何实现这一目标的任何建议?

1 个答案:

答案 0 :(得分:0)

我认为没有内置的方法来做你想做的事情,但计算价值并不是太困难。这是一个简单的计算,它将子项的中心设置为等于父项的中心。

<html>
<body>
<a href="https://0eib2w-dm2306.files.1drv.com/y3mZmtCgaPDWzwwO--MruAzJQrmzG7opNsvntq8tXXQWAzw17rMogruog8h9v0iQSOPS7e8Bsz9YZAjF5smX8A_iaBNlHurOSGIAZZUnBYVjFJ2gIYf-NK2oqlI0C4A5rghoGpQbDfj4PoT3bnJhJgkr9NMSDNafKeVs7CImgwYeKo/IMG_20170120_151432.jpg?psid=1"> <img src="https://0eib2w-dm2306.files.1drv.com/y3mZmtCgaPDWzwwO--MruAzJQrmzG7opNsvntq8tXXQWAzw17rMogruog8h9v0iQSOPS7e8Bsz9YZAjF5smX8A_iaBNlHurOSGIAZZUnBYVjFJ2gIYf-NK2oqlI0C4A5rghoGpQbDfj4PoT3bnJhJgkr9NMSDNafKeVs7CImgwYeKo/IMG_20170120_151432.jpg?psid=1" width="400" height="400" border="0" alt="I can't see the picture, but the link is working. Please click this picture."></a>
</body>
</html>

注意:它不包括父级或子级的窗口镶边, 所以它可能略微偏离垂直中心。