Vb.net 更改列标题文本DataGridView
正如标题所说。我的代码不起作用,我不知道为什么。我查看了其他来源,他们似乎建议我在下面通过代码尝试做什么。有人有什么想法吗 我还尝试了Vb.net 更改列标题文本DataGridView,vb.net,visual-studio-2010,Vb.net,Visual Studio 2010,正如标题所说。我的代码不起作用,我不知道为什么。我查看了其他来源,他们似乎建议我在下面通过代码尝试做什么。有人有什么想法吗 我还尝试了.Columns(0).Name=新标题名 Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load With DataGridView1 .DefaultCellStyle.SelectionBackColor =
.Columns(0).Name=新标题名
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
With DataGridView1
.DefaultCellStyle.SelectionBackColor = Color.DodgerBlue
.DefaultCellStyle.SelectionForeColor = Color.White
.ColumnHeadersDefaultCellStyle.BackColor = Color.DodgerBlue
.ColumnHeadersDefaultCellStyle.BackColor = Color.AntiqueWhite
.DefaultCellStyle.Font = New Font("Calibri", 12, FontStyle.Regular)
.Columns(0).HeaderCell.Value = "Employee ID"
.Columns(1).HeaderCell.Value = "Account Number"
.Columns(2).HeaderCell.Value = "Last Name"
.Columns(3).HeaderCell.Value = "First Name"
.Columns(4).HeaderCell.Value = "Company"
.Columns(5).HeaderCell.Value = "Beginning Date"
.Columns(6).HeaderCell.Value = "Ending Date"
End With
谢谢 如果使用数据绑定到类型和自动生成的列,可以执行以下操作:
[DisplayName("Header Name")]
public string fieldName{get;set;}
myDataGrid.TableStyles[0].GridColumnStyles[0].HeaderText = "Header Name"
dataGrid1.TableStyles.Clear();
DataGridTableStyle tableStyle = new DataGridTableStyle();
tableStyle.MappingName = t.TableName;
foreach (DataColumn item in t.Columns)
{
DataGridTextBoxColumn tbcName = new DataGridTextBoxColumn();
tbcName.Width = 100;
tbcName.MappingName = item.ColumnName;
tbcName.HeaderText = item.ColumnName;
tableStyle.GridColumnStyles.Add(tbcName);
}
dataGrid1.TableStyles.Add(tableStyle);
另一方面,正如你所说,你应该使用:
grid.Columns[0].HeaderText = "Header Name";
但在这里,我没有尝试其他东西。也可以尝试以下方法:
[DisplayName("Header Name")]
public string fieldName{get;set;}
myDataGrid.TableStyles[0].GridColumnStyles[0].HeaderText = "Header Name"
dataGrid1.TableStyles.Clear();
DataGridTableStyle tableStyle = new DataGridTableStyle();
tableStyle.MappingName = t.TableName;
foreach (DataColumn item in t.Columns)
{
DataGridTextBoxColumn tbcName = new DataGridTextBoxColumn();
tbcName.Width = 100;
tbcName.MappingName = item.ColumnName;
tbcName.HeaderText = item.ColumnName;
tableStyle.GridColumnStyles.Add(tbcName);
}
dataGrid1.TableStyles.Add(tableStyle);
但正如答案所说,你应该这样做:
[DisplayName("Header Name")]
public string fieldName{get;set;}
myDataGrid.TableStyles[0].GridColumnStyles[0].HeaderText = "Header Name"
dataGrid1.TableStyles.Clear();
DataGridTableStyle tableStyle = new DataGridTableStyle();
tableStyle.MappingName = t.TableName;
foreach (DataColumn item in t.Columns)
{
DataGridTextBoxColumn tbcName = new DataGridTextBoxColumn();
tbcName.Width = 100;
tbcName.MappingName = item.ColumnName;
tbcName.HeaderText = item.ColumnName;
tableStyle.GridColumnStyles.Add(tbcName);
}
dataGrid1.TableStyles.Add(tableStyle);
我没有。我需要在我的网格视图中添加一个表样式吗?请看下面的答案:)谢谢。由于某种原因,列(0).HeaderText=“Name”仍然不适合我。我还没有找到一个适合我需要的工作解决方案。