1 名前:デフォルトの名無しさん mailto:sage [2016/06/29(水) 23:45:15.36 ID:EZjVZgG6.net] ■Visual Studio 2013 Community & Express(無償の統合開発環境)等はこちら www.visualstudio.com/downloads/ ■コードを貼る場合はこちら ideone.com/ ■前スレ C#, C♯, C#相談室 Part88 [転載禁止]©2ch.net peace.2ch.net/test/read.cgi/tech/1437808445/ C#, C♯, C#相談室 Part89 peace.2ch.net/test/read.cgi/tech/1443271409/ C#, C♯, C#相談室 Part90 echo.2ch.net/test/read.cgi/tech/1455160063/ ■次スレは>>970 が建てる事。 建てられない場合は他を指定する事。
338 名前:デフォルトの名無しさん mailto:sage [2016/11/23(水) 19:49:49.71 ID:dUmyuUeh.net] 列挙子はIEnumeratorですw
339 名前:デフォルトの名無しさん mailto:sage [2016/11/23(水) 20:19:45.57 ID:Sj0D9A4Y.net] >>331 そういうことですか。 良く分かりました。 皆さん、ありがとうございました。
340 名前:デフォルトの名無しさん mailto:sage [2016/11/23(水) 20:45:31.10 ID:mr7aPRRr.net] >>322 時代の流れについて行けないおじいちゃん達をいかに介護するかの議論だよww
341 名前:デフォルトの名無しさん mailto:sage [2016/11/24(木) 09:15:21.21 ID:DNYUjCey.net] プロジェクトA C#DLLライブラリ プロジェクトB C#ASP.NETアプリケーション(Web サイト) プロジェクトC C#ASP.NETアプリケーション(Web API) BとCはAに依存している BとCは別のサーバーにデプロイする 2つのサーバーにインストールされているフレームワークが異なる(具体的には4と4.5.1) サーバー管理者の都合によりフレームワークの更新はできない Bをビルドする時はAのフレームワークバージョンを4にする Cをビルドする時はAのフレームワークバージョンを4.5.1にする このビルド時のフレームワーク切り替え作業が手間なのでなんとかして1オペレーションでビルドできるようにしたい なんとかなりませんか?
342 名前:デフォルトの名無しさん mailto:sage [2016/11/24(木) 09:36:13.90 ID:iMAQMNBa.net] そういうのは依存してるとは言わない aだけビルドするsln、bcだけビルドするsln作っておいて aだけビルドするabcのslnでbcはポストビルドイベントでコマンドラインビルド、 bcだけビルドするabcのslnでaはプリビルドイベントでコマンドラインビルドとか?
343 名前:デフォルトの名無しさん mailto:sage [2016/11/24(木) 14:18:54.69 ID:G2Ig6Dqz.net] >>336 Webサイトって、Webアプリとは違ってランタイム側でビルドするんじゃなかったっけ?
344 名前:デフォルトの名無しさん mailto:sage [2016/11/24(木) 18:57:30.96 ID:/9TZdtP5.net] >>336 プロジェクトCを4.0指定で実行させれば良いんじゃ >>338 webサイトにもプリコンパイルってのがある VSがサポートしてるのかどうかはしらんが
345 名前:デフォルトの名無しさん mailto:sage [2016/11/24(木) 22:53:33.34 ID:5QlniI4z.net] 教えて下さい。 C# で Windows のサービスプログラムを書きました。 その中でプロセス間通信を使いたく、パイプ(NamedPipeServerStream/NamedPipeClientStream)の利用を考えました。 サービスプログラムはそのままだとデバッグが面倒なので、 そのサービスプログラムを参照したフォームプログラムを作ってバグ取りをしました。 フォームプログラムからは、ボタンを押すことでサービスの開始や停止の処理をそっくり呼ぶようにしています。 ここで、 ・フォームプログラムでは、問題なくパイプの送受信が出来る ・サービスプログラムでは、パイプの送受信が出来
346 名前:ネい ただし、サービスを止めるときにパイプの待ち受けを終了させるために、同じプログラム内から送信するデータは送受信できている ⇒ 実際に待ち受けを抜けているので同プログラム内では出来ていると思われる と言う状態になりました。 サービスプログラム内でプロセス間通信、この場合は名前付きパイプですが、の使用に制限などはあるのでしょうか。 他の要因を考えるべきか悩みました。情報があれば教えていただけると助かります。 [] [ここ壊れてます]
347 名前:デフォルトの名無しさん mailto:sage [2016/11/25(金) 01:40:52.65 ID:gI/r9WkT.net] >>340 セッション0のアクセス権限の問題。 namedpipeclientstream-can-not-access-to-namedpipeserverstream-under-session-0 stackoverflow.com/questions/13174660/
348 名前:デフォルトの名無しさん mailto:sage [2016/11/25(金) 10:25:47.20 ID:2+oHnkxr.net] fw3.5からfw4.0以上のdllを参照する方法ないかなぁ?
349 名前:デフォルトの名無しさん mailto:sage [2016/11/25(金) 15:18:07.17 ID:6J0+Q2dT.net] >>341 よくそんなのぱっと出てくるなあw
350 名前:340 mailto:sage [2016/11/25(金) 23:09:50.97 ID:Oc8F6euI.net] >>341 やっぱりそういうのがあったんですね。。 対策を考えます。 ありがとう。
351 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 00:37:00.99 ID:pkHe6RQg.net] 上のリンク先の回答みたいにPipeSecurityとか適切に設定してやればいいんじゃないの
352 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 15:34:45.46 ID:w/Dhvdu8.net] WindowsのAPIだからC#とは直接的には関係ないけど教えてほしい。 特定のウィンドウにキーボードイベントを送信しようと考えている。 keybd_eventを使用してキーボードイベントの送信する事は成功した。 ちなみに第二引数のスキャンコードは使用しない、みたいな事を書いてあるサイト(MSDN含む)が多かったが スキャンコードを指定しないと対象アプリがキーボード処理を受け付けてくれなかったため指定してある。 対象アプリがバックグラウンド中であっても操作しようと考えてSendMessage(またはPostMessage)に変更しようとしたのだが スキャンコードはどこにどのように設定すればいいのだろう? 第四引数のlParamであろうと言う事は想像がつくが、スキャンコードをそのまま設定しても駄目だった。
353 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 16:13:12.18 ID:dXHq99jt.net] >>346 WM_KEYDOWNならこれ、カーソルキーとかも24ビット立てる必要があったかな https://msdn.microsoft.com/en-us/library/windows/desktop/ms646280 SendMessage(hWnd, WM_KEYDOWN, uCode, MapVirtualKey(uCode, 0) << 16 | 1) とかそんな感じだったはず、離すときはWM_KEYUPにして32ビットを立てる C++でWM_KEYDOWNイベントのlParamを吐くウィンドウプロシージャでも作ると良い
354 名前:347 mailto:sage [2016/11/26(土) 16:22:01.70 ID:dXHq99jt.net] > 離すときはWM_KEYUPにして32ビットを立てる うっかりミスった、30〜31ビットね WM_KEYDOWN時のlParam | 0xC0000000する形
355 名前:347 mailto:sage [2016/11/26(土) 16:37:54.65 ID:dXHq99jt.net] あ、そもそもC#でもウィンドウプロシージャオーバーライド出来たっけ protected override void WndProc(ref Message m) { base.WndProc(ref m); if(0x0100 <= m.Msg && m.Msg <= 0x0102) Text = m.ToString(); } とか適当なフォームでやれば実際のウィンドウメッセージが確認できるよ
356 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 17:19:55.67 ID:w/Dhvdu8.net] >>347-349 非常に参考になった。 これを元にキー送信処理を作り直すことにするよ。
357 名前:340 mailto:sage [2016/11/26(土) 21:03:56.05 ID:ZtR+Z7Wd.net] >>341 ,345 昨日はまだ調べていませんでした。 341 に書いていただいた URL の方法で普通に出来ました。 ありがとう。
358 名前:デフォルトの名無しさん mailto:sage [2016/11/27(日) 21:23:49.80 ID:I1ny1q/I.net] 妙な質問だけど、今2ch以外でユーザー同士でC#関連の質問解答ができるコミュニティーって、 - MSDNフォーラム - わんくまの掲示板 - DOBON.NETの掲示板 質問して答えが返ってきそうなのはこのぐらい? あ、別にマルチで質問投げてやろうとかそういう意図ではないので念のため
359 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 00:18:17.41 ID:n0A2uJuC.net] ja.stackoverflowはもう泣く以外の道ないなw
360 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 00:18:37.64 ID:VTugBhJZ.net] >>352 StackOverflow一択だろ
361 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 00:23:13.14 ID:fF5TvHl5.net] google翻訳少し賢くなったんだから「このページを翻訳する」で結構使える
362 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 01:04:22.51 ID:v97E8kC6.net] >>352 最近はteratailもありかも あとは、.NET共通のことならVB中学校も一応あり
363 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 01:42:44.60 ID:9T0ZytTv.net] >>353-354 stackoverflowって日本語版もあったのかw ありがとう >>356 teratailはまったく知らなかったありがとう。
364 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 03:25:24.52 ID:PwcZf+No.net] あとはQA@ITとか
365 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 04:33:07.21 ID:VTugBhJZ.net] >>357 日本語限定ってどこかに書いてあったっけ?
366 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 19:31:45.97 ID:FcPInj/k.net] >>359 >- MSDNフォーラム >- わんくまの掲示板 >- DOBON.NETの掲示板 日本語って一目で分かるだろ
367 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 19:35:28.66 ID:MT+LNPN6.net] 落ち着けよハゲのブラザー
368 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 21:09:47.26 ID:SXoUdBtU.net] >>354 は stackoverflow.com のつもりで書いたが>>357 は ja.stackoverflow.com を見つけて、 日本語版の存在を知らなかった>>354 は>>357 を皮肉と受け取った。
369 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 21:23:26.86 ID:C8x/B1Vp.net] >>360 バカの連鎖反応
370 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 21:35:12.23 ID:Efu8jG2p.net] 人脈作れば全部解決だろ Xamarinユーザー見習えよ
371 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 22:05:43.16 ID:/OQd0iyQ.net] 元の質問者の>>352 だけど、質問の仕方がまずかったなら謝るけど 無意味に喧嘩腰でつっかかるのはどうかと思うよ 意図としては英語も排除しないけど日本語のを中心に教えて欲しかった。 英語は読むのは何とか読めても書く(質問する)のは結構つらいっすわ。
372 名前:デフォルトの名無しさん mailto:sage [2016/11/29(火) 15:41:26.31 ID:07zLg605.net] >>364 あのオタサー集団と同列に見られるのは非常に辛い
373 名前:デフォルトの名無しさん mailto:sage [2016/11/30(水) 08:32:18.72 ID:rOv2n/Yl.net] axwindowmediaplayerで次、前のボタンにイベントを割り当てるのはどうしたらいいですか。 this.axWindowsMediaPlayer1.Ctlcontrols.next += new AxWMPLib.なんちゃらなどで記述? ボタン自体もグレーアウトしていて使えない状態です。 再生などのボタンは初めから再生が割り当てられていてなにも記述しないでもよかったのですが。
374 名前:デフォルトの名無しさん mailto:sage [2016/11/30(水) 11:01:13.74 ID:U6G+25fY.net] AxWindowsMediaPlayerでそんな細かい制御はできない currentPlaylistとかでIWMPMedia管理すればそれらも使えるようになるはず 組み込みのプレイリスト使いたくないならUIも自分で全部やる
375 名前:デフォルトの名無しさん mailto:sage [2016/11/30(水) 16:39:10.32 ID:y2jQ/DIV.net] LINQのQuantifierの日本語訳なんだけど、MSDNだと量指定子、 岩永さんのところだと限定子となってるけど、どっちがより適切だと思う? https://msdn.microsoft.com/ja-jp/library/bb546128(v=vs.120).aspx ufcpp.net/study/csharp/sp3_stdqueryo.html#quantifier
376 名前:デフォルトの名無しさん mailto:sage [2016/11/30(水) 23:23:25.49 ID:rOv2n/Yl.net] >>368 ありがとう。プレイリストがよさそうです。
377 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 09:05:41.40 ID:ySUX8EsS.net] >>369 語義的には量指定子じゃない quantityが量だから
378 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 18:33:51.23 ID:CcMyBcAe.net] でも量指定子って正規表現的な言い回しだよな。 SQL的な言い回しだとALL,ANY,SOMEとかは限定子になるはず。 software.fujitsu.com/jp/manual/manualfiles/M100005/J2X17484/01Z200/J7484-00-02-11-06.html
379 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 18:37:08.39 ID:CcMyBcAe.net] ただまあ本家が量指定子ってるんだから、量指定子が正式用語ではあるだろうけど。
380 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 18:39:48.63 ID:lOA8D/0g.net] 英語のまま使ってもらいたい
381 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 19:00:45.21 ID:74fND9I4.net] そもそもそんなキーワードを使う場面が思い浮かばない…
382 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 00:05:35.89 ID:ui5LUeC9.net] AnyとAllとContainsをまとめて分類しただけの言葉のようだが、禿しくどうでも良い
383 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 00:27:24.78 ID:57Q76p9I.net] 一般的な呼び方じゃ量化子だよな。
384 名前:デフォルトの名無しさん [2016/12/02(金) 06:58:37.23 ID:jL2K9FKD.net] LINQは日本語ではなに? LINQは英語のままで量化子だけ日本語てのは 運用の誤り。 無理やり日本語にするならクオンティフィアでいいと思うがゴミみたいな 概念をわざわざ日本語にするのはよくない。説明的に日本語で「量化を 意味する」のように使うのは問題ないが、「量化子」のように語彙にして しまうのはよくない。英語のまま運用するのがよい。
385 名前:デフォルトの名無しさん [2016/12/02(金) 07:09:43.00 ID:jL2K9FKD.net] 訂正 このサイトの説明では Any,All,Conttainsを総合的に説明するのが目的だからLINQという具体的な ものよりは上位概念だな。この場合は限定子で正しいと思う。 量指定、量化はちょっと違うな。
386 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 07:21:27.21 ID:iUEu5k7c.net] LINQは固有名詞だから訳しようがないけど量化子はすでに記号論理学でも使われてる一般名詞だろ
387 名前:336 mailto:sage [2016/12/02(金) 07:48:29.69 ID:GGzlnXmJ.net] めんどくさいから英語のままでいいってのはある
388 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 10:36:52.50 ID:X9iN1GdM.net] 明治の人に謝るべき暴言。
389 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 14:59:21.44 ID:rEQGNTwO.net] >>380 LINQはLanguage Integrated Queryを省略してるだけだから日本語化できるでしょ(してもらいたくないが) OPEC〜石油輸出国機構みたいに訳してる例は多い
390 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 17:36:35.56 ID:8D4FZt7r.net] >>383 してみ
391 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 17:40:15.92 ID:DaaN/lCj.net] 383ではないが、『言語に統合された問い合わせ』 ・・・ないわ
392 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 18:09:20.76 ID:rEQGNTwO.net] >>384 統合言語クエリって単語がすでにある。クエリも訳したら統合言語処理要求か?
393 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 19:38:47.97 ID:4/nN0nxx.net] 組込問合せ機能 辺りでいいんじゃね?
394 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 20:25:58.53 ID:fkVt0GEN.net] 統合失調言語
395 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 20:31:59.72 ID:57Q76p9I.net] 「LINQは LINQ Is Not Queryの略」とか言い出して、その後「LINQはLINQ。略語や頭字語じゃない」とか言い出す。
396 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 20:59:04.23 ID:fqYy1w3v.net] 一体誰のことを揶揄した気になっているのかね
397 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 21:09:36.57 ID:ui5LUeC9.net] 横だがストールマン以外の誰と言うんだよ
398 名前:デフォルトの名無しさん [2016/12/04(日) 09:09:46.43 ID:HFDVK7VF.net] おまえら言語センスがないな。「問式」でOK。今後日本語でのLINQこれだ。
399 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 09:20:34.29 ID:a6Aihxwg.net] Bingに聞いたらLINQの日本語訳はLINQでいいってさ マイクロソフトのお墨付きだからこれが正解な
400 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 09:42:24.52 ID:zAL6lz1+.net] Binqに聞いたらLINQの日本語での質問はLINEQでいいってさ に見えた
401 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 10:29:28.25 ID:U0Kel+uM.net] こういう関数を作ったら void func<T>(T obj, string name) { obj[name] = ... } [name]の部分でエラーが出ます。 こういう関数は作れませんか?
402 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 10:41:15.33 ID:0sR5hBHN.net] すべてのクラスが this[string] を持つわけじゃないから… 自分がTに入れたいクラスをwhere T: で指定しては
403 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 11:15:31.06 ID:U0Kel+uM.net] >>396 ありがとうございました。 上手く行きました。
404 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 12:05:02.46 ID:OeUSkEhR.net] ジェネリックは使いにくいよな C++みたいな仕様にしてくれりゃいいのに
405 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 12:33:20.31 ID:sIaSQQRI.net] >>398 あほす
406 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 12:56:13.33 ID:3+5uaoN5.net] C++のテンプレートの糞エラーは酷いよな C#みたいにしてくれりゃあいいのにww
407 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 13:58:45.59 ID:VS/jD7cp.net] >>398 なんでわざとあんな文法になってると思うんだよ JIT言語の特長を最大限に活かすためだぜ コンパイラ言語みたいに使うコードを全てあらかじめ生成しておくわけではなく Tでnewされた時に初めてコードを生成するからメモリ使用量も少ない ただ利点はそのまま欠点にもなる T型同士の演算コードを書くとたちまちエラーになるのでdynamic型にキャストするとかしないとな
408 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 15:28:39.35 ID:UcElfbev.net] dynamicにするとbox/unboxが発生するから式木で殴る解決策あったな
409 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 19:05:36.47 ID:U4ZfHibQ.net] ガッチガチにチューニングしようとすると式木やILを触る必要があってツライ
410 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 19:37:47.45 ID:OeUSkEhR.net] コンパイルするタイミングを実行時に移すだけだろ プログラマがCodeDOMや式木でやってる退屈で定型的なプロセスを自動化するだけじゃん マイクロソフトの怠慢だよこれは
411 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 00:12:25.29 ID:wzEk6zml.net] >>402 dynamicの偉大な点は勝手に内部で式木に変換してしかもそれをキャッシュしてくれるから 完全なリフレクションに比べて速度的にそんなに不利ではない ufcpp.net/study/csharp/misc_dynamic.html ここら辺が有名だよな
412 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 01:54:32.46 ID:kX3Q4svv.net] >>404 だいぶ違うぞ プログラミング学び直したほうがいい
413 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 02:10:45.39 ID:u0DsEOY/.net] 使いにくいと言う奴の99%は理解してないだけだからな 1%くらいには李左車の言うように有意義な指摘もあろうが それは404ではないだろう
414 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 03:06:07.61 ID:TC/GOrDD.net] 使いやすいという奴は仕事で使ってない
415 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 07:38:13.09 ID:FYlXKnN9.net] >>406 お前は黙ってJavaかVBでもやってろ
416 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 16:46:58.81 ID:5hp1IXjD.net] >李左車 誰だよ?
417 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 17:16:33.12 ID:uj/2rcDx.net] さーしゃちゃん知らないってモグリかよ
418 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 17:35:03.83 ID:PG/Hzji5.net] クポ?
419 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 00:12:08.98 ID:/aGxLpEu.net] AWS LambdaでC#が使えるようになったらしいな Googleも.NETの開発に参加したことだし、本格的に波が来ている
420 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 05:07:13.06 ID:Vn/geEUt.net] ついにJava終わったか
421 名前:デフォルトの名無しさん [2016/12/08(木) 13:08:55.01 ID:0EWqwyqo.net] C#というより.NETの質問なんですがいいでしょうか? リストビューの各項目のクリックを拾いたいんですが方法ありますか? 例えば以下の様な構成になってる場合「山田」のクリックとか「21歳」のクリックとかを 拾いたい感じです。 --------------------- [項目1][項目2][項目3] 山田 20歳 東京 斎藤 22歳 埼玉 戸川 21歳 千葉 --------------------- やっぱりクリックイベントから現在選択されている項目を取得する という方法が一番でしょうか?
422 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 13:14:33.65 ID:h9KBoTPl.net] >クリックイベントから現在選択されている項目を取得する という方法で何か困っていることがあるならそれを書くのが早い
423 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 13:15:32.08 ID:RR5e4yCq.net] 行と列両方いるならListViewHitTestInfo
424 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 13:33:02.23 ID:0EWqwyqo.net] >>417 おぉ〜クリックイベントに以下でイケました!>>416 さんもありがとうございました! Point pt = new Point(e.X, e.Y); ListViewHitTestInfo lvHti = lstv.HitTest(pt); int row = lvHti.Item.Index; int col = lvHti.Item.SubItems.IndexOf(lvHti.SubItem); MessageBox.Show(row.ToString() + ", " + col.ToString());
425 名前:デフォルトの名無しさん [2016/12/08(木) 14:57:23.01 ID:vKAf8GkY.net] カスタムコントロールについて教えてください。 FontとColorのセットとなるクラスの配列を特定のコントロールのプロパティ値として持ちたいのですが、デザイン時に値を入れると 「ResXファイル.RESXファイルで使用される型XXXXXX..を読み込めませんでした。必要な参照がプロジェクトに追加されていることを確認してください。」というエラーとなってコンパイルできなくなってしまいます。 どの様にすれば、正しく、デザイン時の値を保持&読込ができるのでしょうか? 【ソース】 public class TestCmb:ComboBox { [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)] public List<FontAndColorSet> TestProperty { get; set; } = new List<FontAndColorSet>(); } [Serializable] public class FontAndColorSet { public Font Font { get; set; } public Color Color { get; set; } }
426 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 18:44:29.79 ID:Ayid3Uvv.net] >public Font Font { get; set; } >public Color Color { get; set; } C#では、クラス名を、2回も書けるのか?
427 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 18:47:17.57 ID:6K2Be21z.net] >>420 public 型名 プロパティ名 {get;set;} public Object Object(){ return null; } って書けるのと同じ
428 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 18:48:35.47 ID:6K2Be21z.net] C#はフィールドとローカル変数はhogeFooで、プロパティ、メソッド、クラス、名前空間はHogeFooだから結構型名と被る事多いよ
429 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 01:37:38.58 ID:nk5rcDEa.net] >>419 とりあえずこんな感じ public class TestCmb : ComboBox { [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)] public FontAndColorSetCollection TestProperty { get; set; } = new FontAndColorSetCollection(); } //[Serializable] これいらない public class FontAndColorSet { public Font Font { get; set; } public Color Color { get; set; } } public class FontAndColorSetCollection : Collection<FontAndColorSet> { public void AddRange(FontAndColorSet[] items) { foreach (var x in items) this.Items.Add(x); } } ここが参考になる https://www.codeproject.com/articles/5372/how-to-edit-and-persist-collections-with-collectio
430 名前:419 [2016/12/09(金) 09:31:24.99 ID:pxgVwarY.net] >>423 おおおおおおおおおおお!!!!!!! ありがとうございます♪さっそく試したところうまくいきました!! これだけでかなりコード量が減るのでホントたすかりました;w; ありがとうございますm(_ _)m
431 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 11:25:46.06 ID:nQ2cVzw4.net] 質問者じゃないけど、>>419 のコードというか、List<T>じゃダメな理由は何なんだろう AddRangeの引数の型がT[]じゃないから?
432 名前:デフォルトの名無しさん [2016/12/09(金) 12:43:50.54 ID:73dS9ox0.net] C#でWindows.formアプリを勉強中なんですが controlとの絡みばかりでクラスを作って色々やるといったことなく出来上がってしまいます 複雑化すればそうもならないのでしょうか。。
433 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 13:56:37.83 ID:3kVVURfS.net] >>426 単純なアプリだとそんなもんだよ 規模が大きくなってきても、ある程度まではその流儀でやれなくはないけど、そのうち プログラムの見通しが悪くなって、メンテする際にイライラする事が多くなって、 やり方を変えたくなってくる
434 名前:デフォルトの名無しさん [2016/12/09(金) 18:10:47.21 ID:73dS9ox0.net] >>427 ありがとうございます 頑張ってみます
435 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 18:31:58.73 ID:IAKedM2U.net] ドカタ開発だとそのままのノリで大きなシステム作っちゃうけどね 共有していいのはDBだけ、あとはコピペ上等で画面単位でぶった切れ、という開発スタイルなら設計スキルが無くても容易にスケールするよ まあ一度書いたものは弄らないことが大前提のやり方なので、後で大きな仕様変更が入ったら炎上するんだけど
436 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 20:14:42.74 ID:RJlryFXO.net] >>429 特定企業への破壊工作を目的とする場合以外に絶対にやってはいけないアーキテクチャパターンランキング第1位のやつじゃん
437 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 20:54:48.40 ID:0cPrt4mX.net] >>430 とはいえ日本の高度経済成長を支えた伝統ある開発手法だからね 低スキルな要員で案件を確実に終わらせて逃げることに関しては現代においても最強よ 古典的なウォーターフォールが正しく機能してるなら客の後出し要件なんか無視できるんだし
438 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 21:03:09.07 ID:SmYH2aqj.net] その頃のシステムのリプレイスで付けを払わされて炎上してるところいっぱいありそう