- PR -

ListBoxの各行単位にEnable・Disableの切り替えは可能?

1
投稿者投稿内容
kankan
会議室デビュー日: 2007/04/24
投稿数: 2
投稿日時: 2007-04-24 11:23
いつもお世話になっております。

早速ですが、ListBoxの各行単位にEnable表示・Disable表示を切り替えることは可能でしょうか。
また、上記と同様なUIを実現することは、他のコントロール(DataGridとか。。。)を使用して簡単に実現できないでしょうか。

開発環境:VisualStadio2005 C#

ご教授のほど、宜しくお願い致します。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-04-24 13:35
引用:

kankanさんの書き込み (2007-04-24 11:23) より:

早速ですが、ListBoxの各行単位にEnable表示・Disable表示を切り替えることは可能でしょうか。
また、上記と同様なUIを実現することは、他のコントロール(DataGridとか。。。)を使用して簡単に実現できないでしょうか。


Enable/Disable ということは 「選択」 できないようにするという解釈でよろしいでしょうか?
"表示" というのが少し気になりますが。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-04-24 13:41
情報共有のためにクロスサイトポストをリンクします。
_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
kankan
会議室デビュー日: 2007/04/24
投稿数: 2
投稿日時: 2007-04-24 18:13
引用:


Enable/Disable ということは 「選択」 できないようにするという解釈でよろしいでしょうか?
"表示" というのが少し気になりますが。





ご連絡ありがとうございます。
おっしゃる通り、行毎に「選択」 できないようにするということです。
行毎にチェックボックスを設定することを考えております。

わかり辛い質問で申し訳ありませんでした。
宜しくお願い致します。
R・田中一郎
ぬし
会議室デビュー日: 2005/11/03
投稿数: 979
投稿日時: 2007-04-25 09:17
DataGridView で各行ごとに Disable したい行の ForeColor を変更する。
クリックされた都度にイベントで捕まえて、ForeColor 値を参照して Disable なら無視する元に戻すとか。
そんな感じじゃ駄目でしょうか?
_________________
R・田中一郎 -  R.Tanaka.Ichiro’s Blog
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-04-25 09:28
見た目を 「無効」 に見せかけることについては否定はしませんが、
個人的には 「選択はできるが編集状態にしない」 が Windows 標準だと思いますね。

たとえば、Disable な行が Control の Client 領域全体に続いたら、
  • DataGridView 自体のフォーカスに困る
  • キーボードより行送りをしている最中に、いきなり数行飛んでしまう
つまり、非常に使い難い GUI となります。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
R・田中一郎
ぬし
会議室デビュー日: 2005/11/03
投稿数: 979
投稿日時: 2007-04-25 15:02
引用:

じゃんぬねっとさんの書き込み (2007-04-25 09:28) より:

個人的には 「選択はできるが編集状態にしない」 が Windows 標準だと思いますね。


なるほど、確かに編集開始時点で蹴る方が動作としてはより自然ですね。

_________________
R・田中一郎 -  R.Tanaka.Ichiro’s Blog
1

スキルアップ/キャリアアップ(JOB@IT)