- 1 名前:デフォルトの名無しさん mailto:sage [2009/12/06(日) 23:54:00 ]
- (#゚ー゚)つ < C#、.NETの話題はこちらでどうぞ。
前スレ C#, C♯, C#相談室 Part55 pc12.2ch.net/test/read.cgi/tech/1255530225/ Visual C# 2008 Express Edition 日本語版 www.microsoft.com/japan/msdn/vstudio/express/vcsharp/ その他テンプレ>>2-5くらい
- 369 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 01:21:50 ]
- ないない
- 370 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 01:45:53 ]
- >>365
いや、同一スレッドで(Interlocked使わずに)インクリメント&取得をする方がベター
- 371 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 01:54:28 ]
- どこの国のベターだよ
- 372 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 02:00:20 ]
- >>227は下層のエレメントが多数合って、
不特定のスレッドから勝手に情報が書き換えられるイメージで、 上層の管理スレッドが下層のエレメントの様子を見て 変更があればそれに応じた処理をするのだと思うけど。 そうなると変更があったことを示すシーケンスを作る出すのが 同一スレッドというわけにはいかない。
- 373 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 02:28:52 ]
- そうは思えんが。
>上層の管理スレッドが下層のエレメントの様子を見て >変更があればそれに応じた処理をするのだと思うけど。 こんなことを別スレッドで監視する馬鹿はいない。
- 374 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 02:34:02 ]
- 更新自体は複数スレッドからあったとしても、
こういうバージョンカウンタはスレッドセーフでなくてもよい場合もある。
- 375 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 02:35:10 ]
- [割り込み|シグナル|コールバック|イベントドリブン]が理解できないので〜〜〜
よくある話ではある。
- 376 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 02:44:20 ]
- そういう話なら、そもそもバージョン管理自体入らないんじゃね。
変更があったら即書き換える。
- 377 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 02:58:19 ]
- ウェブサーバーもシングルスレッドで大丈夫とか言っちゃう人かな。
できなくはないだろうけがしんどいのと違うかなぁ。 >ピーク時は一秒間に数百回コールされる可能性あるので。
- 378 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 03:16:13 ]
- >>350
分散処理
- 379 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 07:20:38 ]
- 0
- 380 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 07:43:12 ]
- 実行中に時刻の修正が入ったら、どうなる?
- 381 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 07:47:12 ]
- DateTime系以外は影響なし
- 382 名前:227 mailto:sage [2009/12/28(月) 08:06:38 ]
- 朝起きたらすれが膨大に増えてて吹いた&さーせん。
基本的にユーザーの操作によって位置などが変えられる可能性があり、描画時に上の階層の更新時刻?をすべて舐めて更新されてたら絶対座標などの再計算を行うというものなので 後からの呼び出しが同時刻もしくはそれ以降であることが保障されるなら精度は数百ミリセクでも足ります。 計算してくれた人ありです。その時間なら問題なかです。 そもそもの更新時刻?みて再計算がやり方として正しいのかわからんですがとりあえず実装してみまふ。すくなくとも今の毎回上から全計算しながら下るよりは速いと願いたいw
- 383 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 10:33:58 ]
- そろそろ誰か3行でたのむ。
とちゅうでついていけなくなった。
- 384 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 10:50:53 ]
- >>382
それって、ただのカウンタでいいってことじゃない。
- 385 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 10:54:15 ]
- 場合によってはフラグでも・・・
- 386 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 11:58:05 ]
- ハッシュとか
- 387 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:07:00 ]
- >>377
誰に言ってるのか何が言いたいのか分からん
- 388 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:09:59 ]
- たとえ更新が複数スレッドでも、その用途ならvolatile変数程度で普通にインクリメントで十分。
最もその前に更新自体が複数スレッドから正常に行えるか確認いるけどな。
- 389 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:15:13 ]
- volatileのincrementは安全なのか?
- 390 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:17:30 ]
- 絶対座標取得時は親の座標取得して加算てのと余り変わらん気がするが。
キャッシュするなら、全キャッシュの一発無効化が出来るプラグや更新バージョンを使わんと、 結局全親のトラバースが必要なので大して効果ないと思う。 何せ計算自体の負荷が小さいだろうから。 計算が結構重いなら効果あるだろうけど。
- 391 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:21:59 ]
- volatileではもちろんインクリメントはスレッドセーフじゃない。
でも、キャッシュの無効化のための更新バージョンなんてのは、それでも実質的にうまく動く。 考えて見たら分かるよ。 更新が競合しない場合→当然問題なし 更新が競合する場合→結果として必ず誰かが1回は更新することになるので問題なし
- 392 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:25:21 ]
- 後はビットフラグなんかで上手く工夫すれば、子孫だけキャッシュ無効化ってのもひょっとするとできるかもしれない。
- 393 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:26:44 ]
- >>391
ああそういうことね。ただ前提を創作しすぎるのはどうかと。 それだったらバージョンの更新は、 キャッシュを使ってる側がやれば十分でないかな。
- 394 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:27:47 ]
- とにかく、現状の考え方である、キャッシュの確認も実際の座標計算も同じだけトラバースが必要な設計では、
計算自体がそこそこ重くないとあまり効果は期待できない。
- 395 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:33:29 ]
- うみねこのなく頃にのような展開で話が見えない
- 396 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:39:46 ]
- 実際のとこ、ホントにそんな計算に時間かかってるの?
要素数はトータルでどのくらい? また現状のコードはどんなの? それから、絶対座標計算するのは描画などの特定タイミングで一斉にやるの? 一斉にやるなら、ルートから全要素をトラバースするやり方ならそんな無駄はない。 あるいはこれと全要素共通の更新バージョンとの組み合わせ。
- 397 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:43:06 ]
- それでも遅いなら特定子孫のみを無効化出来るようにビットフラグなんかで工夫、
ただしこれはうまくできるかは分からない、頭の中で設計出来てない。 出来たとしてもちょっと複雑になるから効果は落ちる可能性が高い。
- 398 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 12:53:27 ]
- 産業
- 399 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 16:57:48 ]
- みなさん!自己解決しました!
- 400 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 05:44:35 ]
- みなって誰?
- 401 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 08:17:31 ]
- 青江
- 402 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 10:06:33 ]
- 流石の俺も「青江」は出ねぇわw
- 403 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 12:44:01 ]
- (  ̄ー ̄)ふーん…
- 404 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 12:50:04 ]
- (  ̄ー ̄)
(  ̄ー ̄)(  ̄ー ̄) (  ̄ー ̄)(  ̄ー ̄)(  ̄ー ̄)
- 405 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 13:14:47 ]
- (  ̄ー ̄)
(  ̄ー ̄)(  ̄ー ̄) (  ̄ー ̄)(  ̄ー ̄)(TーT)
- 406 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 13:29:20 ]
- 使い捨て下っ端のITドカタを表現したAAですね
- 407 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 13:57:46 ]
- 本物のドカタは定刻で帰れるがな。
- 408 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 15:06:59 ]
- がながな。
- 409 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 15:52:14 ]
- VC#2008で行番号が表示されないんですが。知ってる人いませんか?
- 410 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 15:53:23 ]
- ありますたorzスミマセン
- 411 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 17:32:37 ]
- 単にあったかだけ書かずにどこにあったかも書いとけよ
- 412 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 17:42:48 ]
- かわりに書いておいてください
では
- 413 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 17:47:51 ]
- 死ねハゲ
- 414 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 17:56:50 ]
- 悪性のタコだな
- 415 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 18:02:22 ]
- C#でDictionary型の連想配列のディープコピーをするには
ループでコピーするしかないですか?
- 416 名前:415 mailto:sage [2009/12/29(火) 18:05:18 ]
- 自己解決しました
- 417 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 18:06:20 ]
- はいはい
- 418 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 18:08:40 ]
- >>416
答え書け、バカ
- 419 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 18:10:54 ]
- >>418
イヤです。
- 420 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 18:10:59 ]
- >>416-418
自演乙 誰だよお前w>>416
- 421 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 18:16:02 ]
- こんなカスが常駐してるからID非表示の板は嫌なんだ
おとなしくループでしこしこやってるわ
- 422 名前:デフォルトの名無しさん [2009/12/29(火) 18:20:57 ]
- >>421
どうしても答え欲しいならトリップでもつけりゃいいじゃん あほなの?
- 423 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 18:23:23 ]
- 冬休みで基地外が居座ってる確率が急上昇中だな。
- 424 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 18:25:52 ]
- たいへんだな
- 425 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 18:28:05 ]
- まぁ、本当に自己解決したからいいわw
ループコピーの関数作ったから。
- 426 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 20:39:25 ]
- UserControl継承してコントロール拵えてたんだけど
パブリックプロパティ作ったらデザイナが勝手にnull入れようとしてくるのね。 そのプロパティはnull許容できないからArgumentNullException吐いてるのね。 それでも執拗にnull入れてくるのね。 たぶんこの辺を制御する属性があるはずなんで教えてください。
- 427 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 20:40:02 ]
- DefaultValueAttribute
- 428 名前: ◆dqVzDvT5pM mailto:sage [2009/12/29(火) 20:40:47 ]
- よろしくおねがいします
- 429 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 20:41:58 ]
- こちらこそよろしくおねがいします
- 430 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 20:42:34 ]
- >>427
ありがとうござます。
- 431 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 21:23:32 ]
- こんごともよろしく
- 432 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 22:21:23 ]
- >>426
デザイナは勝手にnull入れようとなんてしないし、 DefaultValueAttributeは単にプロパティグリッドのコンテクストメニューが 表示されるときに「リセット」項目を有効にするかどうかの判定に使われるだけ。 なんか勘違いしてると思う。
- 433 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 22:26:51 ]
- しないし〜と言わても、コントロール更新する度に
Form.InitializeCompornent の中で毎度毎度 MyControl.NullNotablePropaty=null を自動生成されるのでどうしたらいいのやら 結局メソッドにしたからいいんだけど
- 434 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 22:35:38 ]
- 再現するので一応手順を書きます。
普通にFormアプリケーションのプロジェクトを新規作成します。 追加でUserControlを選択し、TestUserControlを作成します。 TestUserControlに以下のコードを記入します。 private object nullNotablePropaty = null; public object NullNotablePropaty { get { return this.nullNotablePropaty; } set { if (value == null) { throw new ArgumentNullException("value"); } this.NullNotablePropaty = value; } } 一度ビルドします。 Formに戻ってTestUserControlを貼り付けます。 もう一度ビルドすると //警告 値を Null にすることはできません。 //パラメータ名: value と吐いてデザイナが停止します。 これ標準的な動作なのですか?
- 435 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 22:38:49 ]
- >>433
それはUserControlのコードで適切なタイミング(普通はコンストラクタで いいと思うけど)でプロパティを初期化してないから。 あるいは逆に、UserControlが何かのイベントハンドラでプロパティ(またはその バックストアフィールドに)nullを入れちゃってるか。 いずれにせよ、デザイナがやってるのは、ただ設定されてるプロパティを永続化するための コードを吐いてるだけ。 もちろんDefaultValueAttributeで適当な値を指定して、そのプロパティをデザイナで 指定すれば、 MyControl.NullNotablePropaty=null; は作成されなくなるけど、根本的な問題解決になってない。
- 436 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 22:39:52 ]
- そもそもnull入れちゃダメなのにnullで初期化してる意味がわからない
- 437 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 22:43:42 ]
- 別にString.Emptyでも何でもええですよ。
適当な値が思いつかなかったからここではNullになってるだけっす。 重箱がお好きですねぇ。
- 438 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 22:46:16 ]
- 重箱は職業マの趣味だよw
程度低いよねw
- 439 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 22:48:24 ]
- (´・ω・`)
- 440 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 22:52:52 ]
- >>434
だから、とにかくプロパティを初期化するコードを書こうよ。 なぜそういう動作になるのかは、俺も完全には説明できないけど 落ち着いて考えれば大体の想像はつくと思う。
- 441 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 23:02:06 ]
- プロパティって初期化するか?
- 442 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 23:02:58 ]
- 後ろのフィールドを初期化してDefaultValue属性で明示するのが正しい
- 443 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 23:07:09 ]
- んじゃおきまりの文句を
設 計 が 悪 い
- 444 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 23:09:43 ]
- UserControlにnullを許容しない参照型のプロパティを持つのが理解できない
設計が悪い
- 445 名前:434 mailto:sage [2009/12/29(火) 23:20:31 ]
- 自己解決しました
- 446 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 23:20:36 ]
- >>434
あと、一応言っておくけど単にIDEがそのプロパティを永続化するコードを吐くことを 抑止したいだけなら、DesignerSerializationVisibilityAttribute.Hiddenを付ければいい。
- 447 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 23:22:22 ]
- >>439
(´・ω・`)←鳥の糞
- 448 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 23:24:56 ]
- しかし、どう解決したかぐらい書けばいいのにな。
なんかさもしいよな
- 449 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 23:26:11 ]
- 遊ばれてる人々
- 450 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 23:31:57 ]
- 他人がネタで書いてるだけだってば。
- 451 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 23:44:30 ]
- ID無い板で冬休み
そういうことだ
- 452 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 00:17:40 ]
- >>437
こんなあほ相手にするだけ無駄だったな。
- 453 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 00:20:15 ]
- >>432
お前も勘違いしてる。
- 454 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 03:05:56 ]
- 初めまして。
現在COMのiTunes 1.12 Type Libraryを利用して、 iTunesで曲が再生される度にListViewに曲目を追加していくアプリを開発しています。 再生開始時にListViewに追加できるようにするため、一通りコードを書いたのですが 以下のコードがうまく動かずに頓挫しています。 具体的には、関数ShowSongInfoOnList()において リストを表示する手前でMessageBoxを出すと、曲目が表示されるのですが、 (ゆえに、曲目は正常に取れているはず) その次の行のAddする時にうまく行っていないようで、困っています。 Addさえうまく行けば…と思い、苦労しております。 解決法をご存知の方、どうかご教授ください。
- 455 名前:454のコード1 mailto:sage [2009/12/31(木) 03:07:34 ]
- namespace WindowsFormsApplication1
{ public partial class Form1 : Form { // iTunes操作のためのインスタンス private iTunesApp iTunes; public Form1() { // 初期化 InitializeComponent(); // リスト形式で表示するためのコード listView1.FullRowSelect = true; listView1.GridLines = true; listView1.Sorting = SortOrder.Ascending; listView1.View = View.Details; listView1.HeaderStyle = ColumnHeaderStyle.Nonclickable; listView1.Columns.Add("楽曲名", 145, HorizontalAlignment.Left); listView1.Columns.Add("アーティスト", 145, HorizontalAlignment.Left); listView1.Columns.Add("アルバム", 100, HorizontalAlignment.Left); listView1.Columns.Add("再生日時", 200, HorizontalAlignment.Left); // インスタンス生成 iTunes = new iTunesAppClass();
- 456 名前:454のコード2 mailto:sage [2009/12/31(木) 03:08:20 ]
- // イベントハンドラ群
iTunes.OnPlayerPlayEvent += new _IiTunesEvents_OnPlayerPlayEventEventHandler(iTunesPlayEvent); iTunes.OnPlayerStopEvent += new _IiTunesEvents_OnPlayerStopEventEventHandler(iTunesStopEvent); iTunes.OnAboutToPromptUserToQuitEvent += new _IiTunesEvents_OnAboutToPromptUserToQuitEventEventHandler(iTunesQuitEvent); } // 再生開始イベント private void iTunesPlayEvent(Object iTrack) { ShowSongInfoOnList((IITTrack)iTrack); } // 再生終了イベント private void iTunesStopEvent(Object iTrack) { } // iTunes終了イベント private void iTunesQuitEvent() { this.Close(); } private void ShowSongInfoOnList(IITTrack itrack) { // 曲情報を格納 DateTime dt = DateTime.Now; // デバッグ用 MessageBox.Show(itrack.Name + itrack.Artist + itrack.Album + dt.ToString()); // リスト表示 this.listView1.Items.Add(new ListViewItem(new String[] { itrack.Name, itrack.Artist, itrack.Album, dt.ToString() })); } } }
- 457 名前:454 mailto:sage [2009/12/31(木) 03:11:17 ]
- 自己解決しました。スレ汚し失礼しました。
- 458 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 22:29:20 ]
- ある値を返す関数FUNCがあるとします。FUNCが返す値は、FUNC内で取得や生成がされるものではなく、他のコールバック関数CBがきた時点でCB内で取得できるものです。
この場合、FUNCによってCBで得られた値を返すにはどのような方法をとればいいのでしょうか。 CB内の処理で適当なフラグをONにして、FUNC内でそのフラグがONになるのをwhileループで待つというのは微妙な方法だと思います。 またThread.Sleepで処理を待つというのも、この場合FUNCの反応速度が1ms単位になってしまうので若干の妥協を強いられることになってしまいます。 この場合どのような手段が最適なのでしょうか。 ちなみにこの情報が役に立つかはわかりませんが、具体的にやりたいことはDirectShowでUSBカメラのキャプチャを行うことの複雑さをクラスによって隠蔽しようとしています。 DirectShowのISampleGrabberCB.BufferCBが上記のコールバック関数CBにあたり、クラスでキャプチャ画像を取得する関数が上記のFUNCに相当します。 よろしくお願いします。
- 459 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 22:35:25 ]
- FUNCだけでやりたい、ってことなら、ポーリングするしかない。
普通に考えれば、コールバックなりイベントなりを使うだろうけどね。
- 460 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 02:08:29 ]
- 要約するとこう?
| コールバック関数にキャプったデータが非同期で順次渡され、FUNCで現在のデータを取り出す | しかし、まだカメラの準備ができていなくてデータがないときはFUNCをブロックしたい いずれにしても、同期制御の基本的な部分が分らないんだろうな キーワード: イベントオブジェクト、EventWaitHandle
- 461 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 05:13:05 ]
- >>460
笑(笑)
- 462 名前:458 mailto:sage [2010/01/01(金) 17:19:47 ]
- すいません自己解決しました。
- 463 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 17:34:25 ]
- よかったね。死ね。
- 464 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 18:01:31 ]
- すみません自己解凍しました。
- 465 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 21:09:16 ]
- >>459-460
レスありがとうございます。極力クラスを利用するほうには簡単に見せたかったので、イベントやコールバックも控えていたんです。 EventWaitHandleなどについて調べてみたいと思います。
- 466 名前:デフォルトの名無しさん [2010/01/03(日) 13:47:18 ]
- DataGridView を継承したクラス を作っているんですが、CellValuePushed イベント内で
e.ColumnIndex の値が書き変わってしまいます。 関数内で this(あるいはキャストした sender).Rows[].Cells[].Value のように、cell.Value を実行したのが原因のようですが、これはしてはいけないことなんでしょうか?
- 467 名前:466 mailto:sage [2010/01/03(日) 14:17:02 ]
- 自己解決しました
- 468 名前:466 [2010/01/03(日) 14:20:14 ]
- 偽者が出たので再度カキコ
DataGridView を継承したクラス を作っているんですが、CellValuePushed イベント内で e.ColumnIndex の値が書き変わってしまいます。 関数内で this(あるいはキャストした sender).Rows[].Cells[].Value のように、cell.Value を実行したのが原因のようですが、これはしてはいけないことなんでしょうか?
- 469 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 14:26:37 ]
- >>468
偽者なんてわかってるのに二重書き込みとかいちいちうざいよ。
|

|