我有一个winforms自定义UI控件库,其中包含一个用于显示模态对话框Picture-in-Picture的控件。
此自定义控件接收指向已启动其显示的控件的指针作为参数。所以他们联系在一起。这允许控件在启动它的窗口上以模态显示。
Dim f As New PiPCustomDialog 'this form wraps another form PictureInPicture style
f.FormToLoad = New PrintOptions() 'this is the form the user will interact with
f.Owner = Me 'used to determine the size of PiPCustomDialog
Dim dr As DialogResult = f.ShowDialog(Me) 'shows PiPCustonDialog coating, f's OnLoad event initiates display of FormToLoad centered within.
这个控件需要设置f.Owner的事实是臭的。 User32.dll有一个函数GetActiveWindow(),它可能允许控件更自给自足。
有谁愿意教这条老狗一个新的伎俩?我想学习更好的方法。
答案 0 :(得分:0)
我现在将使用此解决方案: