動作環境
Windows 7 Pro (32bit)
Microsoft Visual Studio 2017 Community
Sublime Text 2
DataGridView において、列の幅を変更したい。
- 指定
-
.Columns[N].Width
を変更する - 参考: https://msdn.microsoft.com/ja-jp/library/system.windows.forms.datagridviewcolumn.width(v=vs.110).aspx
-
- 自動
-
.AutoSizeColumnsMode
を設定する - 参考: http://dobon.net/vb/dotnet/datagridview/autosizecolumn.html
-
Form1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
namespace _170421_helloWorld
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Shown(object sender, EventArgs e)
{
string alist = "data1,data2,data3";
string[] elem = alist.Split(',');
for(int idx=0; idx<3; idx++)
{
dataGridView1.Rows.Add(elem);
}
}
private void B_narrower_Click(object sender, EventArgs e)
{
dataGridView1.Columns[1].Width -= 20;
}
private void B_autosize_Click(object sender, EventArgs e)
{
dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
}
}
}
自動設定時の結果。