2012年3月2日金曜日

VMのクライアントPCがホスト以外から参照できない

以前は何の問題も無く使えていたVM環境が、突然ホスト以外のPCから参照できなくなった。
pingも通らない。
けど、ホストからは全然問題なくpingも通る。
VMクライアントからネットも見えるし、他PCも問題なく見える。pingも通る。
けど、ホストPC以外から全然見えない。。。
FireWallはもちろん切ってます。

何で?
これで3時間うにゃうにゃしてました。

で、誰が原因だったかと言うと、
Trend Micro Common Firewall Driver

ホストPCのローカルエリア接続のプロパティに、この人がチェックONの状態でいました。
チェックをOFFにしたら、問題なくみんなから見える子になりました。

こーゆーの自分で解決できるようになりたいなー。
先輩に見て貰ったら、色々チェックしながら30分で問題解決してくれましたっ。

ステキ!!

2012年3月1日木曜日

DataGridView ComboBox列を追加すると背景色が黒色になる。

DataGridView に ComboboxColumnを2つ追加し、1列目のコンボの値が変更されたら2列目のコンボのリストを再作成する…
みたいな処理を作ったところ、新規行の1列目のコンボボックスをプルダウンした段階で、コンボ内の背景色が黒くなる現象に遭遇した。

2列目のコンボのリストを再作成するので、1列目にdataGridView_EditingControlShowingイベントを追加し、
その中でdataGridViewComboBox_SelectedIndexChangedとかっつってイベントを発生させて、
dataGridViewComboBox_SelectedIndexChanged()の中で2列目のリストを再作成していた。

このとき、dataGridViewComboBox_SelectedIndexChangedの中で、直接dataGridView.Rows[0]~とかってやると、この現象が出るらしい。

ちょうど同じ現象の書き込みが。。。

参考サイト:http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36436&forum=7

で、
DataGridViewComboBoxEditingControl cb = (DataGridViewComboBoxEditingControl)sender;
DataGridView grid = cb.EditingControlDataGridView;

+カレントセルの内容を取得するときは、必ず
cb.EditingControlFormattedValue
ってする。
cb.EditingControlFormattedValue じゃない方法で取得すると、相変わらず背景黒で表示されちゃうので注意。

てか、これバグでしょーよ。