// find højde med den angivne font float hoejde = e.Graphics.MeasureString(this.listView1.Columns[0].Text,f).Height; // find max bredde på en kolonne float[] breddeArray = new float[this.listView1.Columns.Count];
// find max bredde og udskriv columnheader for (int i=0;i<this.listView1.Columns.Count;i++) { ypos = venstre; breddeArray[i] = this.FindMaxSize(e.Graphics,f,i); string t = this.listView1.Columns[i].Text; e.Graphics.DrawString(t,f,brush,xpos,ypos);
private float FindMaxSize(System.Drawing.Graphics g,Font f,int column) { float max = g.MeasureString(listView1.Columns[column].Text,f).Width; foreach (ListViewItem item in this.listView1.Items) { SizeF size = g.MeasureString(item.SubItems[column].Text,f); if (size.Width > max) { max = size.Width; } } return max; } Du kommer nok i problemer hvis teksten er breddere end papirets bredde, men det kan du også tjekke for, hvis det bliver aktuelt.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.