PowerShell WPF中DataGrid第一列与网格间多余间隙消除咨询
消除WPF DataGrid第一列左侧的间隙
你看到的第一列左侧间隙是WPF DataGrid默认启用的行标题列,这个列默认会保留占位空间(即使不显示行号),导致出现多余空隙。要消除它,只需修改DataGrid的HeadersVisibility属性:
解决步骤
在你的DataGrid配置代码中添加以下一行:
$dataGridView1.HeadersVisibility = [Windows.Controls.DataGridHeadersVisibility]::Column
这个属性的可选值说明:
All:默认值,同时显示列标题和行标题Column:仅显示列标题,隐藏行标题列(消除左侧间隙)Row:仅显示行标题None:列标题和行标题都隐藏
修改后的完整代码
$dataGridView1 = New-Object Windows.controls.DataGrid $dataGridView1.Name = 'ListBox1' $dataGridView1.AutoGenerateColumns = $false $dataGridView1.HorizontalAlignment = "Stretch" $dataGridView1.VerticalAlignment = "Stretch" $dataGridView1.ColumnWidth = "*" $dataGridView1.Margin = New-Object Windows.Thickness(20, 200, 20, 20) $dataGridView1.SelectionMode = [Windows.Controls.DataGridSelectionMode]::Single $dataGridView1.CanUserResizeRows = $false $dataGridView1.CanUserResizeColumns = $false # 添加这一行消除左侧间隙 $dataGridView1.HeadersVisibility = [Windows.Controls.DataGridHeadersVisibility]::Column $printerNameColumn = New-Object Windows.Controls.DataGridTextColumn $printerNameColumn.Header = "Printer Name" $printerNameColumn.Binding = New-Object Windows.data.Binding("ShareName") $dataGridView1.Columns.Add($printerNameColumn) $printerLocationColumn = New-Object Windows.controls.DataGridTextColumn $printerLocationColumn.Header = "Location" $printerLocationColumn.Binding = New-Object Windows.data.Binding("Location") $dataGridView1.Columns.Add($printerLocationColumn)
内容的提问来源于stack exchange,提问作者Sajith S.K
相关产品推荐
相关产品推荐

