C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[8]: Listboxでリスト境界に線を入れたい


(過去ログ 35 を表示中)

[トピック内 9 記事 (1 - 9 表示)]  << 0 >>

■17701 / inTopicNo.1)  Listboxでリスト境界に線を入れたい
  
□投稿者/ tanaka (8回)-(2008/04/30(Wed) 13:39:21)

分類:[C#] 

Listboxでリスト間に線等を入れて解りやすくしたいのですが、
そもそもListboxで出来るのでしょうか。
またこの場合違うコントロールを使うのでしょうか。

【以下Listbox】
┌----------------------------------------┐
│                                        |
│                                        │
│                                        │
│                                        │
│                                        │
└----------------------------------------┘

                     ↓

┌----------------------------------------┐
├----------------------------------------┤
├----------------------------------------┤
├----------------------------------------┤
├----------------------------------------┤
├----------------------------------------┤
└----------------------------------------┘

引用返信 編集キー/
■17704 / inTopicNo.2)  Re[1]: Listboxでリスト境界に線を入れたい
□投稿者/ 組込系の人 (14回)-(2008/04/30(Wed) 14:21:56)
ListViewでViewプロパティをDetailsにして、
GridLInesプロパティをTrueでどうでしょうか?

ListBoxに横線入れる機能があるのかわかりませんが、自分はそうしてます
引用返信 編集キー/
■17705 / inTopicNo.3)  Re[2]: Listboxでリスト境界に線を入れたい
□投稿者/ tanaka (10回)-(2008/04/30(Wed) 15:02:21)
回答ありがとうございます。
最終的には以下のようにしたいです。
Listboxにはこだわっていません。

┌----------┬----------┬---------┐
| リスト名 |ステータス|処理時間 |
├----------┼----------┼---------┤
| LIST1    |end       |00:00:50 |
├----------┼----------┼---------┤
| LIST2    |practice  |    -    |
└----------┴----------┴---------┘
                  :
                  :
                  :

引用返信 編集キー/
■17706 / inTopicNo.4)  Re[3]: Listboxでリスト境界に線を入れたい
□投稿者/ ネタ好き (187回)-(2008/04/30(Wed) 15:05:50)
No17705 (tanaka さん) に返信
> Listboxにはこだわっていません。

DataGridViewがいいと思います。

引用返信 編集キー/
■17725 / inTopicNo.5)  Re[4]: Listboxでリスト境界に線を入れたい
□投稿者/ tanaka (11回)-(2008/04/30(Wed) 19:48:17)
いろいろ本をみていたのですが、VisualStudioのプロパティ画面のような
ものにしたいのですが、これはDataGridViewを使用しているのでしょうか
引用返信 編集キー/
■17729 / inTopicNo.6)  Re[5]: Listboxでリスト境界に線を入れたい
□投稿者/ Hongliang (269回)-(2008/04/30(Wed) 20:46:47)
Hongliang さんの Web サイト
あれは PropertyGrid って(そのままな名前の)コントロールを使っています。
PropertyGrid は非常に限定的なコントロールなので今回の問題の解決策とはならないでしょう。
引用返信 編集キー/
■17730 / inTopicNo.7)  Re[6]: Listboxでリスト境界に線を入れたい
□投稿者/ tanaka (12回)-(2008/04/30(Wed) 21:22:20)
No17729 (Hongliang さん) に返信
そうなんですか。
そうするとDataGridViewを使うことになるんでしょうか。
引用返信 編集キー/
■17732 / inTopicNo.8)  Re[7]: Listboxでリスト境界に線を入れたい
□投稿者/ 魔界の仮面弁士 (704回)-(2008/04/30(Wed) 22:54:00)
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();
}

引用返信 編集キー/
■17734 / inTopicNo.9)  Re[8]: Listboxでリスト境界に線を入れたい
□投稿者/ tanaka (13回)-(2008/04/30(Wed) 23:34:04)
No17732 (魔界の仮面弁士 さん) に返信

魔界の仮面弁士様誠にありがとうございました。
当方がやりたかったのはListViewです。

たまたまみたListViewがアイコンで表示されてる画面でしたのでそういう表示しか出来ないものだと
勝手に思ってました。改めて本を見直したらちゃんと載っておりました。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -