C#ListView或者DataGridView列宽和行高的设置

列宽 

一般来说,我们直接把可见列的自动调整大小模式设置为Fill

this.dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;

就能对齐了。下方的滚动条也会消失,但是这样做的话有些美中不足的是,如果有一列的数据特别长,他的展示宽度跟其他列也是一样的,就导致有些信息无法展示,对此,可以手动设置宽度:

 this.listView1.Columns[7].Width = this.listView1.ClientSize.Width-(
                                              this.listView1.Columns[0].Width+
                                              this.listView1.Columns[1].Width+
                                              this.listView1.Columns[2].Width+
                                              this.listView1.Columns[3].Width+
                                              this.listView1.Columns[4].Width+
                                              this.listView1.Columns[5].Width+
                                              this.listView1.Columns[6].Width);

原理很简单,其他列直接设置自己想要的宽度,最后一列就是用控件总宽度减去其他列的累加,以保证列的宽度和控件的宽度一致,这样下方的滚动条就不会出现了

行高 

dataGridView的行高可直接用代码设置

this.dataGridView1.AutoGenerateColumns = false; //去除多余列
this.dataGridView1.RowTemplate.Height = 35;//值行高的设置

ListView的行高则需要取点巧,首先,添加一个imagelist控件,设置其图片的大小,再给ListView的Smallimagelist属性绑定该imagelist控件,就可以实现行高的设置(注意,图片大小的设置第一个是宽,第二个是高)

代码实现

ImageList   imgList   =   new   ImageList();   
imgList.ImageSize   =   new   Size(1,   20);//分别是宽和高

listView1.SmallImageList   =   imgList; 

猜你喜欢

转载自blog.csdn.net/qq_42766492/article/details/81990058