[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 05/20 10:02 / Filesize : 242 KB / Number-of Response : 1042
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

ふらっと C#,C♯,C#(初心者用) Part115



1 名前:デフォルトの名無しさん mailto:sageteoff [2015/03/18(水) 18:08:26.52 ID:irwZfv9C.net]
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。

他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。

内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。

なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっと C#,C♯,C#(初心者用) Part114
peace.2ch.net/test/read.cgi/tech/1419512512/

■関連スレ
C#, C♯, C#相談室 Part86
peace.2ch.net/test/read.cgi/tech/1419608259/

■コードを貼る場合は↓を使いましょう。
ideone.com/

474 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 03:00:38.81 ID:tQ5Dyqi2.net]
Windows Forms

475 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 06:25:04.78 ID:rY8mv9pb.net]
高dipのディスプレイが普及したらXAMLなんだろうけど。

476 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 06:27:21.84 ID:4bXcOge2.net]
WinFormsでいいよ
わざわざXAMLやるくらいならそれこそHTMLの方がいい
VSCodeみたいにラップすることもできるし、ストアアプリでもHTML使えるんだし

477 名前:457 mailto:sage [2015/05/18(月) 06:28:53.40 ID:rY8mv9pb.net]
dip → dpi の間違い

478 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 07:06:37.40 ID:jdBOVrH8.net]
なんか、おれのくだらない質問から荒れてしまったみたいでなんかすみませんw

479 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 07:19:24.34 ID:92QLSF+E.net]
誰だテメーは
いきなり現れて

480 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 07:42:22.46 ID:jdBOVrH8.net]
>>406
こいつです

481 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 07:51:13.98 ID:oJXHJ+WI.net]
気にすんな
最近ふらっとスレには煽りたいだけの低能が集まってるみたい

482 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 08:07:17.02 ID:3eEkTQ9y.net]
いるね
レスのケツに必ず煽りがついてる人とか



483 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 08:27:22.37 ID:R6NuXwMZ.net]
集まってるって言うか、まともなやつらがいなくなっただけかと...

484 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 08:29:14.79 ID:wiNRRdg2.net]
5月の何時もの風景。

485 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 08:29:37.73 ID:7BvZDlvH.net]
>>1

486 名前:デフォルトの名無しさん [2015/05/18(月) 17:38:21.87 ID:LZCCaXsh.net]
C# でIEを操作しているのですが


ie.Quit(); をしてもブラウザが閉じないことがよくあります。

これを回避する方法はありますか?

もしくは、無理やりプロセス削除をするしか方法はないのでしょうか?

487 名前:デフォルトの名無しさん mailto:sage [2015/05/18(月) 18:11:13.71 ID:oJXHJ+WI.net]
COMオブジェクトがリークしてんじゃねーの?
Marshal.ReleaseComObjectし忘れ。



488 名前:例えば
var hoge = ie.Document.getHogeHoge();

ie.DocumentのところでHTMLDocumentClassオブジェクトがリーク
[]
[ここ壊れてます]

489 名前:デフォルトの名無しさん [2015/05/18(月) 20:09:01.46 ID:IFcmf4XH.net]
まぁそれはよくある話だがIE自体がクソ
なんでわざわざIE向けのCode書きたくもない。

490 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 12:09:18.52 ID:KlK4atyI.net]
他のスレで書くとC++やJavaを進められるので、あえてここで聞いてみます
VSのC#が慣れた人がAndroidのビジネスアプリを作成する場合、何が一番良いのでしょう?
外部機器と通信して数値やグラフ表示する程度ですが

491 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 12:24:11.27 ID:Px7Puw/x.net]
そんな前置きを書くとC++とJava勧める奴がでるぞ

492 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 12:24:17.97 ID:Ll/HpEwU.net]
そんなもんASP.NET MVCで作ってブラウザで表示すりゃいいよ
ビジネスアプリならどのみち裏でサーバー動いてるんだろ?
わざわざAndroid固有の技術を覚える必要なんかない
もしどうしてもネイティヴの体裁にしたいならWebView貼って終わり



493 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 12:45:54.61 ID:Ll/HpEwU.net]
あと言語の問題だけじゃなくてデプロイやアップデートをどうするのかとか
紛失時のセキュリティとか、あらゆる面でWebの方が楽だ
JSから使えない端末側の機能が必要とかオフラインでも使えるようにしたいとか、
よほど強い理由がなければサーバ側に何を使うかともかくWebベースがいい

494 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 13:25:28.98 ID:BpuPofZt.net]
>>474
Javaでいいんじゃね。C#使えるならちょっと勉強すればJavaの文法は難しくないだろ
ライブラリやAPIはどっちにしろ覚えないとしょうがないだろうから

>>476-477
外部機器と通信というくだりをどう考えてるのか聞かせて欲しいもんだ

495 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 13:39:06.72 ID:D6hTeVWg.net]
なんでもそうだけど一番メジャーなもので作るのがいいよ。
だからJava

496 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 14:26:18.58 ID:Ll/HpEwU.net]
>>478
外部機器と通信というのが端末と機器の間で直接通信するという意味であるなら、
そもそも選択の余地はないだろうしそんなテクニカルな話で一般論の答えを求めても仕方ないと思うんだが

497 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 14:33:43.23 ID:D6hTeVWg.net]
通信だけ側でやって表示はWebViewでやればいい

498 名前:デフォルトの名無しさん [2015/05/19(火) 20:28:32.62 ID:Ye3mIF4/.net]
>>472
対策としてはどーすればいいの?

499 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 20:53:01.44 ID:7GmTMJUE.net]
リストを2つ用意してMVCモデルで設計するって
簡単に言ってどういう感じになるんでしょうか?

list1とlist2があったとすると、list2にlist1の参照を入れる?って事ですよね?

500 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 21:17:45.49 ID:baIIPGtU.net]
何言ってるんだかさっぱり分からん
誰がそうしろって言った?
そいつにMVCとはなんですかと聞け
たぶん一般的な意味とは違うんだろ

501 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 21:23:26.04 ID:DIo0U3oL.net]
>>482
いちおう変数で受けておいて使い終わったらMarshal.ReleaseComObjectする
効果ないかもしれない上に非常に面倒くさいけど。

var doc = ie.Document;
try
{
 var hoge = doc.getHogeHoge();
 try
 {
  ...
 }
 finally
 {
  Marshal.ReleaseComObject( hoge );
 }
}
finally
{
 Marshal.ReleaseComObject( doc );
}

IEとかってプロセスが再利用されるの期待して、すぐに死なないとかない?

502 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 21:35:43.77 ID:q3WQijmv.net]
>>485
なんか諸説あって何が正しいのかよく分からんけど、
少なくともExcelオートメーションに関する限り経験的には
ちゃんと変数に入れるだけで十分でReleaseComObjectは必要ない気が。



503 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) ]
[ここ壊れてます]

504 名前:21:47:37.66 ID:0y3JMzOX.net mailto: 何が正しいのかよく分からん場合にどうするか それだけじゃん []
[ここ壊れてます]

505 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 22:21:44.93 ID:WbxBVd4k.net]
>>486
Interop.Excelから使う分にはReleaseComObjectは不要だと思う。
CreateObjectでレイトバインディングする場合は、ドット1つ以上使わないようにして
オブジェクトを全部変数に入れて順番にReleaseComObjectする必要がある。

506 名前:デフォルトの名無しさん mailto:sage [2015/05/19(火) 22:51:14.36 ID:q3WQijmv.net]
>>488
なるほどそういうものですか。

507 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 00:38:14.58 ID:gX6G9tdz.net]
>>485
試しにやってみましたが、効果ありませんでした。。。

508 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 00:49:51.58 ID:03XLPVPu.net]
それC++でやっても残ったな。quitできないタイミングがあったはず。プロセス落とすのがいいと思う

509 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 02:42:40.81 ID:gX6G9tdz.net]
>>491

ループ処理させながらieのプロセスを落としまくるとPCが不安定になりませんか?

510 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 06:31:47.64 ID:f7NgOdgI.net]
>>490
それは、プロセスが残ったままになる場合の対応だからね。
Quitの前にSleepやDoEvents的なものでウエイトさせると出来たりしないか?

511 名前:デフォルトの名無しさん mailto:sage [2015/05/20(水) 08:33:09.09 ID:KFMNcacm.net]
IEの操作はvbsでやるに限る

512 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 07:07:47.85 ID:5AlY38lu.net]
初心者がLinq,ラムダ式に手出すのは早いですか?



513 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 07:28:51.30 ID:01TMmBFS.net]
文法も網羅してないのにもう中級者です!ってのもおかしい気がするが
個人的には

514 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 07:47:19.36 ID:MBfknsBq.net]
これらを理解できてたら手を出していい
・デリゲート
・オーバーライド、多態性
・Template Methodパターン、Observerパターン
・IEnumerable<T>の仕組み
・yieldの使い方
これだけわかってりゃLINQやラムダが何やってるのかはだいたい想像がつくはず

515 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 08:34:54.41 ID:/hDcy/Cl.net]
キャプチャの仕組み理解すれば普通に使っていいだろ

516 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 08:45:38.96 ID:il658Xe0.net]
LINQは使うと読み易くなることがあるが
壮大なオナニーLINQは害悪

517 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 09:16:37.76 ID:Tg0bXDwp.net]
なんでや、オナニーに使われるのはLINQに限ったことじゃないやろ

…関数型言語がポエム書きやオナニーに使われるのと同じで
ドヤりたい人を引きつける何かを備えてることは否定しないが

518 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 12:14:00.62 ID:NNS76vjx.net]
コントロールをドラッグして仮の枠を表示して、ドロップ先に線を描くのってどうやってやるの?
一時的にパネルを表示して仮の枠を描いて、ドロップ先もパネルを表示して線を描いておく感じですか?

519 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 13:12:17.42 ID:9WVVlPPq.net]
>>501
何を言ってるのか分かるように書かないと回答来ないよ

520 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 14:27:40.35 ID:/hDcy/Cl.net]
なんとなく分かった

コントロールをドラッグして他のコントロールの場所に挿入するみたいな感じかな
んでドラッグ中はinsertion markを描画すると

ドラッグでコントロールの場所をリアルタイムで変化させちゃうというベタな方法のつもりなのかな?
それだと移動先にマークを書くのが難しくなるわな

ToolStripのAllowItemReorderの実装のようにOLEドラッグ&ドロップでやるのが楽っぽいけど
マークもコンテナ描画イベントで描けるし
かなり凝ればドラッグ中のコントロールを半透明で描画したりも出来るし

521 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 14:55:03.12 ID:MBfknsBq.net]
枠を付けたい場所に最初からPanelを入れまくっておいて枠を非表示にしとくだけでよくね
それなら描画しやすいだけでなくイベントも簡単に拾える

522 名前: []
[ここ壊れてます]



523 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 16:21:42.63 ID:Md4oOCiG.net]
ItemsControlクラスのItemsとItemsSourceの違いがよく分かりません。
型とアクセサを見るにItemsSourceは新しく割り当てるとき用で、
Itemsはいま割り当てられているオブジェクトの取得用ってことでしょうか?
ItemsSourceを直接getすると何かマズいんでしょうか

524 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 16:35:02.91 ID:9WVVlPPq.net]
>>505
MSDNライブラリの説明を読んで分からなければサンプルを見る。
普通それで分かる。

525 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 20:29:48.64 ID:MBfknsBq.net]
>>505
ItemsSourceはコレクションをバインドするのに使う。
バインドするコレクションの要素はコントロールではなくて任意の型のオブジェクトで、
そのオブジェクトからどうやってコントロールを作るかをItemTemplateで定義する。
ItemsはItemsSourceの要素から生成されたコントロールのコレクション。
低レベルな制御をする場合以外は基本的にItemsは使わない。

526 名前:デフォルトの名無しさん [2015/05/21(木) 21:55:00.16 ID:Ps6etXnO.net]
下のようなプログラム

string[,] test = {{ "a","b" }};
ArrayList data = new ArrayList();
data.Add(test);

から、どのようにすれば
ArrayList に格納された string[,] test を取り出すことが出来るでしょうか?

foreach (string[,] func in data) {
Console.Write(data);
}

と書けば取り出せたのですが、
インデックスが0にも関わらず
foreach を使うのは、冗長な気がしており。。。

なお、ArrayList は使うべきでは無いのは解っておりますが、
扱いたい関数の返り値がArrayList のため、
やむなく使っております。

よろしくお願いします。

527 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 22:01:36.60 ID:MBfknsBq.net]
(string[,])data[0]
または data.Cast<string[,]>().FIrst()
dataが空の場合でもコケないようにしたければ上記Firstの代わりにFirstOrDefault

528 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 22:51:04.66 ID:VDw572dB.net]
見た目にエラーが無ければ結果の正しさなどどうでもいい
とはすごい発想ですね

529 名前:デフォルトの名無しさん [2015/05/21(木) 22:55:00.04 ID:Ps6etXnO.net]
>data.Cast<string[,]>().FIrst()

取り出すことが出来ました。

こんな取り出し方があるのですね。
勉強になります。

ありがとうございます。

530 名前:デフォルトの名無しさん mailto:sage [2015/05/21(木) 23:07:34.12 ID:d30eeU2g.net]
え?
(string[,])data[0]
でよくないか?

531 名前:デフォルトの名無しさん mailto:sage [2015/05/22(金) 09:59:36.37 ID:tJUwDPLO.net]
System.timers.timer動作中にRadioButtonを押すと、

有効ではないスレッド間の操作: コントロールが作成されたスレッド以外のスレッドからコントロール 'Button1' がアクセスされました。

と、表示されてしまいます。
timer動作中の中どころかソリューション全体の中でもButton1を使用したり関連付ける部分は書いていないのですが・・・。

何か対応方法等ありますでしょうか?
よろしくお願いします。

532 名前:デフォルトの名無しさん mailto:sage [2015/05/22(金) 10:06:46.74 ID:AYYhXMHp.net]
Nameプロパティが"Button1"ななんかのコントロールがあんじゃねーの?
あとSystem.Timers.Timerは分かってて使ってんだよね?



533 名前:デフォルトの名無しさん mailto:sage [2015/05/22(金) 10:50:15.90 ID:tJUwDPLO.net]
>>514
Form1.Designers.csも検索してみましたが、"Button1"が他で使われている形跡はありませんでした。
見た目的には安定するSystem.Windows.Forms.Timerを使用してみたところ、
今度はtimerの中のParallel Forで止まる様になってしまいました。

534 名前:デフォルトの名無しさん mailto:sage [2015/05/22(金) 11:35:09.17 ID:Eq73D2cp.net]
ユーザーコントロール操作しててその中で使われてるとかそんなんじゃね?
Button1にこだわらずにタイマのイベントハンドラ内でコントロール触ってるかどうかをとにかく確認

535 名前:デフォルトの名無しさん mailto:sage [2015/05/22(金) 12:04:17.52 ID:tJUwDPLO.net]
とりあえず動作としては解決しました。
Button1を消したら今度はButton2でエラーが発生したので特定のコントロールは関係無かったです。

タイマーの中で余計な動きを見せない為にthis.SuspendLayout() とthis.ResumeLayout() を使っていたので、
こちらで引っかかっていました。
これらのメソッドについて、詳しく調べてみます。
ありがとうございました。

536 名前:デフォルトの名無しさん mailto:sage [2015/05/22(金) 13:13:12.96 ID:JBwzRzqV.net]
あまり把握出来てないのでデバッグのヒントになりそうなやつ
1.例外ブレークポイント
2.スレッドウィンドウ
これでなんか分かるかも

537 名前:デフォルトの名無しさん mailto:sage [2015/05/22(金) 13:16:00.51 ID:JBwzRzqV.net]
あととりあえず動かしたいならタイマーでやる事をthis.Invokeに変更

538 名前:デフォルトの名無しさん mailto:sage [2015/05/22(金) 14:59:32.83 ID:G62CPnRd.net]
基本的な
コントロールは別スレッドから操作してはいけない
と言う事が理解できていない気がする

あとは勝手に別スレッドで実行される状況も理解できてない気も

539 名前:デフォルトの名無しさん mailto:sage [2015/05/22(金) 16:29:40.04 ID:1VpTopWF.net]
>>513
SynchronizingObject

つ ttp://www.cactussoft.co.jp/Sarbo/divCompTimerEvntCS.html

540 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 20:08:10.21 ID:KArwiYHk.net]
VS2013です。
pictureBoxにLoadする画像の上にグリッドを描画したいです。
DrawLineで線分を描画することはできたのですが、破線を描画するにはどうすれば良いでしょうか?
MSDNでGraphicsクラスのメソッドを見てきたのですが、該当するものが無いようです。

541 名前:デフォルトの名無しさん mailto:sage [2015/05/24(日) 20:27:32.93 ID:KArwiYHk.net]
すみません解決しました

542 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 04:35:31.71 ID:v33s9jMH.net]
質問です
Javaのsynchronized付きのメソッドを含むクラスをC#に移植しようとしているのですが、
GuardedSuspensionパターンで

Task.Run(() => new Task(ClientThread));
Task.Run(() => new Task(ServerThread));

とやるとすぐにプログラムが終了してしまいます

これを

Thread cl = new Thread(new ThreadStart(Client));
new Thread(new ThreadStart(Server));

とやると正常動作します

Taskはすぐに終了してしまうのでしょうか?



543 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 07:41:03.83 ID:R3oTKNZR.net]
プロセスにフォアグラウンドスレッドが存在しなくなると
バックグラウンドスレッドがまだ処理中でもプロセスは終了してしまう
これが原因ではないか

Taskは内部でスレッドプールを使っているが
スレッドプールのスレッドは全てバックグラウンドスレッドだ
フォアグラウンドスレッドが欲しいなら、自分でThreadを作成するべきだ

以下参考資料
https://msdn.microsoft.com/ja-jp/library/h339syd0%28v=vs.110%29.aspx
https://msdn.microsoft.com/ja-jp/library/0ka9477y(v=vs.110).aspx

544 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 13:34:14.87 ID:tMcWag84.net]
>>525
ありがとうございます
疑問がすっきり解決しました
Taskももう少し改良して欲しいですね・・・

545 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 13:48:49.67 ID:63j168JE.net]
改良?

546 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 13:51:40.44 ID:rowGmHFY.net]
Threadのようにいろいろ機能はあるけどThreadよりも使い勝手が良い、みたいな

547 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 13:54:40.42 ID:5Xzz88z5.net]
TaskScheduler自前で作りゃいいだけだけど
そもそもメインスレッドで待てばいいだろハゲ

548 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 14:34:51.52 ID:buubow6H.net]
.NET3.5ベースで開発しています
あるabstractクラス内のstaticメソッドを動的に舐めて
Dictionary<"メソッド名", メソッド型>に突っ込んでいく処理でつまづいております

codepad.org/uyDTOTDA

取得したメンバを実行するのはInvokeMemberすればいいのですが
今回のケースで探してもなかなか出てきませんでした
よろしくおねがいします

549 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 14:52:20.57 ID:wGou5fq6.net]
Task[] tsk = new Task[] {Task.Factory.StartNew(new Client),
                 Task.Factory.StartNew(new Server)
};
Task.WaitAll(tsk);

こういう風に書くと正常に動きました
お騒がせしました
そりゃMainに書いてりゃMainが終了すれば呼びだされたTaskも強制停止されて
終了してしまう事を忘れていました

550 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 15:19:52.31 ID:MKPJRGG4.net]
>>530
MethodInfo.CreateDelegate

551 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 15:31:25.76 ID:uOKH4JiO.net]
>>530みたいなことやるならMEF使えばいいのに

552 名前:527 mailto:sage [2015/05/25(月) 15:44:28.52 ID:buubow6H.net]
>>532,530

リプライありがとうございます
ご提案いただきましたMethodInfo.CreateDelegate、MEFは、残念ながら.NET 4からの機能です

https://msdn.microsoft.com/ja-jp/library/hh194376%28v=vs.110%29.aspx
https://msdn.microsoft.com/ja-jp/library/dd460648%28v=vs.110%29.aspx



553 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 16:54:45.18 ID:MKPJRGG4.net]
ああ、そうだったか
じゃあDelegate.CreateDelegateのほうで

554 名前:527 mailto:sage [2015/05/25(月) 17:09:02.90 ID:buubow6H.net]
>>535
ありがとうございます!
Delegate.CreateDelegateでいけました!

foreach (MemberInfo m in typeof(Module).GetMembers(BindingFlags.Static | BindingFlags.Public)) {
var del = System.Delegate.CreateDelegate(typeof(method_type), m as MethodInfo);
methods.Add(m.Name, del as method_type);
}

555 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 23:04:17.52 ID:+UFfY2ty.net]
Windowsアプリケーションを作成しているのですが、
private void button_Click(object sender , EventArgs e){ ~~~ }
button.Click += new EventHandler(this.button_Click);
と記述してあるのですが、内部的にどのような処理が行われているのでしょうか。

556 名前:デフォルトの名無しさん mailto:sage [2015/05/25(月) 23:26:51.92 ID:uOKH4JiO.net]
>>537
button.Click += new EventHandler(…)は
button.add_Click(new EventHandler(…))と同じ
new EventHandler(this.button_Click)はJavaなら
new EventHandler {
 public void Invoke(object sender, EventArgs e) { this.button_Click(sender, e); }
}
に相当する
だからといって何がしたいのかは分からないだろうけど、それはObserverパターンを勉強しろ

557 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 03:24:56.20 ID:fbPfP2jD.net]
TrackBarで、つまみをつかんでいる(つまみの色が変わっている)
かどうかの判定ってできませんか?

558 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 03:30:46.44 ID:fbPfP2jD.net]
あと、チェックボックス付のListViewで、1行選択の解除をやりたいんだけど、
ListViewHitTestInfoでクリックしたサブアイテムのindexを取る方法ってありますか

559 名前:デフォルトの名無しさん mailto:sage [2015/05/26(火) 04:12:33.48 ID:Ihaek877.net]
>>539
MouseDownとMouseUpのイベントを発生させるといいかも

>>540
こんなのは?

private void listView1_MouseDown(object sender, MouseEventArgs e)
{
ListViewHitTestInfo info = listView1.HitTest(new Point(e.X, e.Y));
int row = info.Item.Index;
int col = info.Item.SubItems.IndexOf(info.SubItem);
label1.Text = "row = " + row + ", col = " + col;
}

560 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 21:58:33.29 ID:XkW9VjQH.net]
WebClientで作成したインスタンスって破棄しないと影響でかいですか?
数秒毎にループでインスタンス作成しては読み取る処理してるんですが、同期処理のせいか重いです。非同期処理はこれから実装を検討してるんですが。

561 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 22:21:23.93 ID:ihueyhra.net]
>>542
放置プレイで何の問題も起きてないが。

562 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 22:35:44.05 ID:aznGlafD.net]
数秒毎って、攻撃と思われないように気をつけろよ



563 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 22:40:12.30 ID:1SVgoR5i.net]
相談室でやってろよ阿呆君

564 名前:デフォルトの名無しさん mailto:sage [2015/05/27(水) 22:53:17.63 ID:ihueyhra.net]
>>542
毎回disposeするとHTTP Keep Alive効かないか

565 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 14:16:08.87 ID:SHzqDeqo.net]
>>546
効くだろ。

566 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 19:10:07.05 ID:d869LRaF.net]
>>547
Disposeでコネクション切断されるだろ。

567 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 20:02:27.61 ID:QF6UrsQ/.net]
544のコンピューターでは切断されたんだろうな

568 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 20:48:57.06 ID:kXESabcL.net]
で、結局gc任せでいいの?

569 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 21:01:06.10 ID:+zWW11JT.net]
Disposeによって内部のコネクションプールに戻されるとかじゃねぇの?
Disposeはしといた方が良いと思う

570 名前:デフォルトの名無しさん mailto:sage [2015/05/29(金) 21:34:23.34 ID:1xJgnWA+.net]
ソース読むとWebClientはただのファクトリーで
Disposeは何もやってないように見える

571 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 14:56:19.16 ID:DRtbRWlm.net]
IDisposeを解放しないバカは死ね
ただしasync/awaitは除く

572 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 17:06:27.61 ID:UmMhJR2/.net]
開放しないとどのような弊害が起きるんでしょう。



573 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 18:10:40.93 ID:C+IOxaVu.net]
設計上意図されないタイミングで開放するバカもいる

574 名前:デフォルトの名無しさん mailto:sage [2015/05/30(土) 18:15:33.23 ID:49aSQ4HZ.net]
一般的なIDisposable実装ではファイナライザでリソース解放するようになっているのでパフォーマンスが低下する






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<242KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef