Powershell TablePanelLayout边框残留

Powershell TablePanelLayout边框残留,powershell,powershell-2.0,Powershell,Powershell 2.0,我在powershell 2.0中遇到了一个问题,我在可滚动的TablePanelLayout周围放置了一个边框。当滚动时,有一个边界残留-我如何得到这个残留或程序,以便滚动时没有边界残留?代码如下: [CmdletBinding()] Param() Set-StrictMode -Version 2 Write-Verbose "Create the main form" $form = New-Object Windows.Forms.Form $form.Size = New-Ob

我在powershell 2.0中遇到了一个问题,我在可滚动的TablePanelLayout周围放置了一个边框。当滚动时,有一个边界残留-我如何得到这个残留或程序,以便滚动时没有边界残留?代码如下:

[CmdletBinding()]

Param()

Set-StrictMode -Version 2

Write-Verbose "Create the main form"
$form = New-Object Windows.Forms.Form
$form.Size = New-Object Drawing.Size @(900, 400)

$form.SuspendLayout()

$dataSize = 70
$dataHeight = 20
$volumeSize = 280

Function Create-Data-Panel ($width, $height, $correction) {

    Write-Verbose "Create the panel that holds the data"
    $dataPanel = New-Object Windows.Forms.TableLayoutPanel
    $dataPanel.Size = New-Object Drawing.Size @($width,$height)
    $dataPanel.Dock = "Fill"
    $dataPanel.AutoScroll = $true
    $dataPanel.BackColor = "Transparent"
    $dataPanel.CellBorderStyle = "None"
    $dataPanel.RowCount = 0
    $dataPanel.ColumnCount = 7  

    $dataPanel.add_paint({$whitePen = new-object System.Drawing.Pen([system.drawing.color]::blue, 2)
    $_.graphics.drawrectangle($whitePen,$this.clientrectangle)
    })  

    $correctedWidth = $volumeSize - $correction
    for ($j=0; $j -lt 100; $j++){
    for ($i=0; $i -lt 7; $i++) {
        $label = New-Object System.Windows.Forms.Label
        $label.TextAlign = "MiddleCenter"
        $label.Text = "0"
        $label.Font = "Verdana, 9pt"
        $label.Size = "$dataSize,$dataHeight"
        $label.BackColor = "Transparent"
        if ($i -eq 0) {
            $label.Size = "$correctedWidth,$dataHeight"
            $label.Text = "$j 12345678901234567890123456789012"
        }
        $dataPanel.Controls.Add($label,$i,$j)
    }
    }

    return $dataPanel
}

$hght = $form.size.height * 3/4
$statsPanel = Create-Data-Panel 760 60 4
$form.Controls.Add($statsPanel)
$form.Add_Shown( { $form.Activate() } )    
$form.ResumeLayout()
$form.StartPosition = "CenterScreen"    
$form.ShowDialog()
下面是一些屏幕截图。第一个是当我最初打开GUI时(注意蓝色边框)。第二个是在我滚动了几行之后

更新:
似乎只有当您使用滚动滑块或滚动箭头时,才会出现这种残留,但如果您单击滚动条本身滚动,则不会出现这种残留。

您能显示不需要的边框(残留)的屏幕截图吗?@MathiasR.Jessen我已更新了问题。您能显示不需要的边框(残留)的屏幕截图吗?@MathiasR.Jessen我已经更新了问题。