- PR -

C#の動作について

投稿者投稿内容
梅干あきら
会議室デビュー日: 2005/12/01
投稿数: 16
投稿日時: 2005-12-17 22:49
各位

別の機械ではとうか、という件ですが、Am21(ThinkPad)でも、同様に奇妙な現象は出ております。

監督者としては、(1)マイクロソフトに相談を出すことで、C#の発売元に意見を求める、(2)監督者自身でプログラムを拡大させながら、どこでエラーが出るのかを探すことを試みる、・・・・・ようとしております。入り口と出口だけを抑えるという形では、仕事が進みそうにないからです。致し方ありません。今、監督者のCF-W4で書いた一部を、来週DELLにコピーして、様子を見ると同時に、拡張して行って要素を見ようと考えております。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-12-18 01:03
引用:

梅干あきらさんの書き込み (2005-12-17 22:49) より:

別の機械ではとうか、という件ですが、Am21(ThinkPad)でも、同様に奇妙な現象は出ております。


では、プログラム側の問題ですね。
デザイナに関わる部分で何かまずいことをしているのでしょう。

こういった場合も、怪しい部分をコメントアウトなどして、
原因を絞り込むのが定石です。

これはソースコードを組んだ方のお仕事です。
というより、これをしようともしない方はプログラマではないと思います。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
梅干あきら
会議室デビュー日: 2005/12/01
投稿数: 16
投稿日時: 2005-12-21 08:18
2)デザイン画面のあるボタンをダブルクリックすると、そのボタンに対応するプログラムソースに切り替わる。しかし、そのボタンに対応する新しいプログラムソースを作成するように新しい関数を作成してしまう。

例えば、デザイン画面でbutton1をクリックすると、ソース画面に切り替わり、Form1.csの「private void button1_Click(object sender, System.Events e)」が本来表示される。しかし、Form1.csに「private void button1_Click_1(object sender, System.Events e)」を作成してしまい。以前、作成した「private void button1_Click(object sender, System.Events e)」のプログラムソースを無視するようになる。毎度おこらないが、この現象は時々おこる。

この現象に関して、私が使っている、CF-W4で試してみました。
現象は出ました。しかし、新しくcomboBoxを定義して、デザインウィンドウと、コードウィンドウを往復したのですが、現象は出ませでした。もし、エディタの機能がおかしいとすると、あ新しく定義したボタンとか、comboBoxでも出ないといけない現象ではないかと思います。

コード作成者は、OSを入れ替えるべきであると、主張していますが,CF-W4で確認した現象からみると、OSの不具合ではないと思うのですが、如何でしょうか?


_________________
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-12-21 09:31
引用:

梅干あきらさんの書き込み (2005-12-21 08:18) より:

この現象に関して、私が使っている、CF-W4で試してみました。
(snip)
コード作成者は、OSを入れ替えるべきであると、主張していますが,CF-W4で確認した現象からみると、OSの不具合ではないと思うのですが、如何でしょうか?


これに関しては私が既にリプライしていますよ。

引用:

じゃんぬねっとの書き込み (2005-12-18 01:03) より:

では、プログラム側の問題ですね。
デザイナに関わる部分で何かまずいことをしているのでしょう。

こういった場合も、怪しい部分をコメントアウトなどして、
原因を絞り込むのが定石です。


試してみました?

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2005-12-21 09:43
引用:
梅干あきらさんの書き込み (2005-12-21 08:18) より:
2)デザイン画面のあるボタンをダブルクリックすると、そのボタンに対応するプログラムソースに切り替わる。しかし、そのボタンに対応する新しいプログラムソースを作成するように新しい関数を作成してしまう。

例えば、デザイン画面でbutton1をクリックすると、ソース画面に切り替わり、Form1.csの「private void button1_Click(object sender, System.Events e)」が本来表示される。しかし、Form1.csに「private void button1_Click_1(object sender, System.Events e)」を作成してしまい。以前、作成した「private void button1_Click(object sender, System.Events e)」のプログラムソースを無視するようになる。毎度おこらないが、この現象は時々おこる。

作ったアプリの動作の問題じゃなくてVisualStudoの動きの問題なのですか?(両方?)
上記現象についても、Jittaさんがすでに回答されてる通りで、同じ名前のメソッドが
すでにあり、かつそれがイベントハンドラとして登録されていない場合に起こる
「普通の動き」つまりVisualStudioの仕様だとおもいますが。プログラマが手動で
コードにハンドラ用のメソッドを追加してしまって、ハンドラ登録されてると
思い込んでたということはないでしょうか。

引用:
この現象に関して、私が使っている、CF-W4で試してみました。
現象は出ました。しかし、新しくcomboBoxを定義して、デザインウィンドウと、コードウィンドウを往復したのですが、現象は出ませでした。もし、エディタの機能がおかしいとすると、あ新しく定義したボタンとか、comboBoxでも出ないといけない現象ではないかと思います。

手動でメソッドのみを追加してからコンボボックスをダブルクリックすれば発生すると思います。
いろは
常連さん
会議室デビュー日: 2005/05/11
投稿数: 31
投稿日時: 2005-12-21 11:08
引用:

梅干あきらさんの書き込み (2005-12-11 01:34) より:
1)マウスカーソルがウィンドウ内に閉じ込められる。



いろはです。
皆さんいろいろやり取りをしているみたいですが、、
↑の件、私の環境では出ています。
『お馬鹿だな〜』っと思って使っていますが。
もうすでに解決しちゃいました?

環境:Win2kSp4 + VS2003
現象:デザイン画面にタブコントロールを追加して、ページを切り替えるとタブコントロールの中からカーソルが出られない ^^;
対応:ESCキーを押すと出られる。(根本的な対応法は分かりません)

面倒なので、再現性は取っていません。
再起動するよりはましですし、運用法で逃げられるので、(私は)小さな事問題と認識しております。。。

参考になりましたか?
ぼのぼの
ぬし
会議室デビュー日: 2004/09/16
投稿数: 544
投稿日時: 2005-12-21 12:28
私もありますよー(・_・)ノシ

VS.NET2003のWebFormのデザイナで。
TABLEやDIVの内側に配置したアイテムの幅とか調整してるとき、
たまーにですが、mouseupを認識しなくなって、アイテムを掴みっぱなしになってしまいます。
そのままマウスを動かしつづけると、外側のTableとかを掴んだ状態になってしまい、
TABLEタグやTDタグに余計なWidthやHeightがついてしまう(せっかくHTMLエディタで削ったのに)。
一度画面を閉じようにもマウスカーソルがデザイナ内に閉じ込められてメニューをクリックできない。
orz

このときは仕方ないのでキーボードから一度VS.NET2003を終了してます。
再現性は無く、たまーにしか起こりません。
Windows Updateもウィルスチェックもこまめにしてるので、ウィルスではないと思います。
VS.NET2003のバグと認識して諦めてます。

いつのまにか余計なFONTタグがいっぱいできてるのも困りもんです。

#当分VS.NET2005を買う予定無し…
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-12-21 13:18
便乗ですが、Form 全体を掴んでしまい、
他のコントロールが選択できないという現象は 4 回ほど私もあります。
(何をやっても解除できなかったですね)

Form だけでなくコンテナなコントロールすべてで起きることなのかな?
今の端末に乗り換えてからは起きないので、検証もできていませんが...

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌

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