|
■No17730 (tanaka さん) に返信
> そうするとDataGridViewを使うことになるんでしょうか。
それは人に尋ねる事ではなく、tanaka さん自身が決める事だと思いますよ。
これから作るアプリの仕様を一番よく知っているのは、他ならぬ tanaka さん自身なのですから。
既に回答のついている DataGridView と ListView それぞれを比べて、
何か要件を満たせない問題が無いかどうか、使いにくい点が無いかどうか、
まずは、いろいろとチェックしてみてください。
その上で、問題が無いのであれば、当然それが使えるというわけですし、どちらも要件を
満たせないという事であれば、また別のコンポーネント(または回避策)を探さなければなりませんよね。
// ListView な例
void Form1_Load(object sender, EventArgs e)
{
ListView lv = new ListView();
lv.Dock = DockStyle.Fill;
Controls.Add(lv);
lv.Columns.Add("リスト名", 70);
lv.Columns.Add("ステータス", 60);
lv.Columns.Add("処理時間", 80);
ListViewItem row;
row = lv.Items.Add("LIST1");
row.SubItems.Add("end");
row.SubItems.Add("00:00:50");
row = lv.Items.Add("LIST2");
row.SubItems.Add("practice");
row.SubItems.Add( "-");
lv.View = View.Details;
lv.FullRowSelect = true;
lv.MultiSelect = true;
lv.GridLines = true;
}
// DataGridView な例
void Form1_Load(object sender, EventArgs e)
{
DataGridView dgv = new DataGridView();
dgv.Dock = DockStyle.Fill;
Controls.Add(dgv);
dgv.EditMode = DataGridViewEditMode.EditProgrammatically;
dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
dgv.MultiSelect = true;
dgv.AllowUserToAddRows = false;
dgv.AllowUserToResizeRows = false;
dgv.RowHeadersVisible = false;
dgv.RowCount = 2;
dgv.ColumnCount = 3;
dgv.Columns[0].HeaderText = "リスト名";
dgv.Columns[1].HeaderText = "ステータス";
dgv.Columns[2].HeaderText = "処理時間";
dgv[0, 0].Value = "LIST1";
dgv[1, 0].Value = "end";
dgv[2, 0].Value = "00:00:50";
dgv[0, 1].Value = "LIST2";
dgv[1, 1].Value = "practice";
dgv[2, 1].Value = "-";
dgv.AutoResizeColumns();
}
|