在 Windows 窗体中的 2 个控件之间插入面板

尼克D

我想在其他两个控件之间动态插入一个面板(用户控件)。假设我有一个 PictureBox(Control) 作为父级,图片框上还有一个其他控件。

我想从图片框中删除另一个控件,向图片框中添加一个面板(控件),然后将旧控件设置为新面板。现在我有这个代码:

   If m_targetDisplay.MainDoubleBufferedPictureBox.HasChildren Then
     For Each child As Control In m_targetDisplay.MainDoubleBufferedPictureBox.Controls
        If (child.BackColor = Drawing.Color.Transparent) Then

           Dim panel As SXFadeWrapperForGPU = New SXFadeWrapperForGPU()
           panel.ClientSize = New Size(child.ClientSize.Width, child.ClientSize.Height)
           panel.Location = New System.Drawing.Point(child.Location.X, child.Location.Y)
           m_targetDisplay.MainDoubleBufferedPictureBox.Controls.Add(panel)

           panel.Controls.Add(child)
           m_targetDisplay.MainDoubleBufferedPictureBox.Controls.Remove(child)
           AddHandler panel.Paint, AddressOf PanelPaintEvent
        End If
     Next
  End If

我的代码正在向它前面的透明颜色子项添加一个背景包装器。问题是即使我在添加之前或添加回来之后删除了孩子,我也永远无法在屏幕上看到它。有没有什么特别的事情可能是 Remove 做的,所以被删除的 Child 不再可用?

DJV

您应该将子位置更改为 (0, 0),否则它仍将相对于其在 MainDoubleBufferedPictureBox 中的位置,但现在它位于新面板中。它可能就在那里,就在面板边界之外

If m_targetDisplay.MainDoubleBufferedPictureBox.HasChildren Then
    For Each child As Control In m_targetDisplay.MainDoubleBufferedPictureBox.Controls
        If (child.BackColor = Drawing.Color.Transparent) Then

            Dim panel As SXFadeWrapperForGPU = New SXFadeWrapperForGPU()
            panel.ClientSize = New Size(child.ClientSize.Width, child.ClientSize.Height)
            panel.Location = New System.Drawing.Point(child.Location.X, child.Location.Y)
            m_targetDisplay.MainDoubleBufferedPictureBox.Controls.Add(panel)

            panel.Controls.Add(child)
            child.Location = New System.Drawing.Point(0, 0) ' <--- this
            m_targetDisplay.MainDoubleBufferedPictureBox.Controls.Remove(child)
            AddHandler panel.Paint, AddressOf PanelPaintEvent
        End If
    Next
End If

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Windows窗体中调整Windows /控件比例

来自分类Dev

Windows窗体中的Webbrowser控件无法登录

来自分类Dev

在Windows窗体中显示控件的集合

来自分类Dev

我可以在 Windows 窗体窗体中创建和显示多少个控件?

来自分类Dev

如何在C Sharp Windows窗体应用程序中从窗体2修改窗体3中的值

来自分类Dev

Windows窗体/ C#中的动态折叠面板创建

来自分类Dev

隐藏和重新显示Windows窗体中的面板/组件

来自分类Dev

Windows窗体面板中如何查找标签是否存在

来自分类Dev

在C#中隐藏/显示Windows窗体面板

来自分类Dev

Windows窗体面板中如何查找标签是否存在

来自分类Dev

Windows窗体中的切换开关控件

来自分类Dev

Windows窗体中的自定义控件出现问题

来自分类Dev

C#Windows窗体中的计时器控件

来自分类Dev

如何从Windows窗体Webbrowser控件中删除元素

来自分类Dev

Windows窗体中的切换开关控件

来自分类Dev

确定Windows窗体应用程序中的插入模式

来自分类Dev

在Windows窗体中打印

来自分类Dev

WebBrowser控件和Windows窗体之间的交互

来自分类Dev

在Windows窗体应用程序中叠加两个面板

来自分类Dev

在 Windows 窗体中由第一个窗体打开的第二个窗体关闭时设置第一个窗体的事件

来自分类Dev

在 Windows 窗体中管理两个项目的事件

来自分类Dev

Windows窗体控件属性?

来自分类Dev

寻找一个Windows窗体控件

来自分类Dev

如何在2个Windows窗体之间来回切换

来自分类Dev

Windows窗体中控件的位置和大小在Visual Studio Designer和编程实例化之间有所不同

来自分类Dev

Tab索引在datagridview行中循环,无法移至Windows窗体C#中的下一个控件

来自分类Dev

Windows窗体中的布局困难

来自分类Dev

Windows窗体DataGridView中的图像

来自分类Dev

MMC在Windows窗体中对齐

Related 相关文章

  1. 1

    在Windows窗体中调整Windows /控件比例

  2. 2

    Windows窗体中的Webbrowser控件无法登录

  3. 3

    在Windows窗体中显示控件的集合

  4. 4

    我可以在 Windows 窗体窗体中创建和显示多少个控件?

  5. 5

    如何在C Sharp Windows窗体应用程序中从窗体2修改窗体3中的值

  6. 6

    Windows窗体/ C#中的动态折叠面板创建

  7. 7

    隐藏和重新显示Windows窗体中的面板/组件

  8. 8

    Windows窗体面板中如何查找标签是否存在

  9. 9

    在C#中隐藏/显示Windows窗体面板

  10. 10

    Windows窗体面板中如何查找标签是否存在

  11. 11

    Windows窗体中的切换开关控件

  12. 12

    Windows窗体中的自定义控件出现问题

  13. 13

    C#Windows窗体中的计时器控件

  14. 14

    如何从Windows窗体Webbrowser控件中删除元素

  15. 15

    Windows窗体中的切换开关控件

  16. 16

    确定Windows窗体应用程序中的插入模式

  17. 17

    在Windows窗体中打印

  18. 18

    WebBrowser控件和Windows窗体之间的交互

  19. 19

    在Windows窗体应用程序中叠加两个面板

  20. 20

    在 Windows 窗体中由第一个窗体打开的第二个窗体关闭时设置第一个窗体的事件

  21. 21

    在 Windows 窗体中管理两个项目的事件

  22. 22

    Windows窗体控件属性?

  23. 23

    寻找一个Windows窗体控件

  24. 24

    如何在2个Windows窗体之间来回切换

  25. 25

    Windows窗体中控件的位置和大小在Visual Studio Designer和编程实例化之间有所不同

  26. 26

    Tab索引在datagridview行中循环,无法移至Windows窗体C#中的下一个控件

  27. 27

    Windows窗体中的布局困难

  28. 28

    Windows窗体DataGridView中的图像

  29. 29

    MMC在Windows窗体中对齐

热门标签

归档