Dot-Net
Control.FindForm 和 ContainerControl.ParentForm 有什麼區別
我想知道
Control.FindForm和之間是否有任何功能(或其他)區別ContainerControl.ParentForm?我.ParentForm在創建自己的使用者控制項時一直在使用,但是有什麼理由.FindForm會是更好的選擇嗎?據我所知,它們總是會返回相同的表單(即使用者控制項所在的表單或 null)。只是.ParentForm打電話.FindForm還是有一段時間兩者可能不同(可能使用mdi windows)?
它們有細微的不同。當您在頂級表單上呼叫 ParentForm 時,它將返回 null,因為它沒有父級。FindForm() 不會,它會返回自己。ParentForm 提出了安全要求,而 FindForm() 沒有。他們否則使用相同的內部實現。Winforms 本身根本不使用 ParentForm,我會忽略它。