- 1 名前:デフォルトの名無しさん [2008/08/20(水) 17:15:27 ]
- このスレッドは
「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。 ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、 勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。 >>980を踏んだ人は新スレを建てて下さい。 >>980が無理な場合、話し合って新スレを建てる人を決めて下さい。 前スレ ふらっとC#,C♯,C#(初心者用) Part29 pc11.2ch.net/test/read.cgi/tech/1216734995/
- 343 名前:311 mailto:sage [2008/09/06(土) 12:11:25 ]
- private void button1_Click(object sender, EventArgs e)
{ timer1.Start(); } private void timer1_Tick(object sender, EventArgs e) { textBox1.Text = "a"; } もしかしてツールからフォームだしてダブルクリックして これでいいの?
- 344 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 12:16:09 ]
- >>343
その状態で、Form1.Designer.csの InitializeComponent()の中で何をやってくれているか観察してみ
- 345 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 12:19:52 ]
- >>343
意味はないけどそれであってるw System.Windows.Forms.TimerはInvokeいらないよ
- 346 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 12:32:14 ]
- >>344
おおすげえwwこんなのがあったのかww ちなみにこれの違いってなんなの? this.button1 = new System.Windows.Forms.Button(); private System.Windows.Forms.Button button1;
- 347 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 12:44:46 ]
- 上は式で下はメンバの宣言だから全く別種の要素だけど
- 348 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 14:01:14 ]
- >>343
そういうのがまあたいていの場合の普通のやり方。 ちょっといろいろデザイナ触ってみた方がいいんじゃないかな。
- 349 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 14:38:49 ]
- File.Move()って一つ一つファイルを移動しても
まとめて移動するのに比べてオーバーヘッドありませんか?
- 350 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 19:44:46 ]
- r――――――‐ 、
|なにして遊ぶ?| `ー――v――― '' ∧,,∧ ∧,,∧ ∧,,∧ (´・ω・) (・ω・`). ∧,,∧ r――――――――‐ 、 ( ´・ω).(O┬O) (O┬O) (ω・´ ) < 公園でかくれんぼ!| ( O┬O ∧,,∧. ∧,,∧)┬O ) `─――――――─‐ ' ◎-J┴◎( ´・) (・` )┴し-◎ ( .__ l) (l __ ) `uロu'. `uロu' r―――.ヘ―────―‐ 、 |じゃあ公園まで競争だ! | `ー―――――────‐ '
- 351 名前:デフォルトの名無しさん [2008/09/06(土) 21:43:31 ]
- Visual C# 2008 でアプリケーションを作ったんですが、
うちでは動くのに、友人のPCだと動きません。 .NET Frameworkのバージョンが、うちは3.5で、 友人のPCが2.0なのが原因じゃないかと思うんですが、 下位バージョンの.NET Fameworkでも動くアプリを作るには、 どうすればいいのでしょうか?
- 352 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 21:45:26 ]
- プロジェクト→プロパティ
対象のフレームワーク
- 353 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 21:56:34 ]
- それやっても向こうに2.0 SP1入れるかバージョンリダイレクトかけるかしないと動かなくないか?
- 354 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 22:18:24 ]
- 素直にsetup作ればいいのに。
なんだか昔のVBerみたいな偏屈に見えるよ。 ちなみに、SP1の機能使ってなければSPなしの2.0環境でも動くんじゃないの? つーか2.0はWin2000や98用が今のところ用意されてないSP2とかもうグダグダだな。
- 355 名前:デフォルトの名無しさん [2008/09/06(土) 23:24:16 ]
- C#でのASP関連の質問はどこで聞けばいいの?WebProg板にASP.NETスレあるけど、やたら過疎ってるみたいなんだけど。
- 356 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 23:45:26 ]
- C#でASP……できたっけ?
てのはともかくここでもそこでも好きにすりゃ良いんじゃね
- 357 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 23:55:57 ]
- >>353
なんでやねん まあSPでの変更点に引っかかる可能性はわずかにはあるが。
- 358 名前:396 [2008/09/07(日) 08:59:27 ]
- エクスプローラの機能限定版(ドラッグ&ドロップが出来ないエクスプローラ)
的なファイル管理ツールを作ろうと思っています。 サンプルとなるものってどこかに無いでしょうか? 開発ツールはC#(VS2008)です。
- 359 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 09:13:23 ]
- C#とは直接関係ないですが、ユーザーコントロールの件。
VisualStudio のソース用のテキストエディタには左側にブレークポイントを 置くエリアがありますが、あれはPanelコントロールのようなものなんでしょうか? あのような機能のものを作ろうとした場合、ソーステキスト側のスクロール、 Fontのサイズ、行間距離、折り返しの有無とその変化などにすべて対応する 必要がありますが、簡単に実現する方法はないものでしょうか?
- 360 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 09:37:16 ]
- やった事無いけど、テキストボックスにSendMessageで
EM_SETRECTで左に余白を作り EM_GETFIRSTVISIBLELINEで先頭行の番号を取得し EM_GETLINECOUNTで表示されてる行数を取得して・・とかやればいけるんじゃね?
- 361 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 10:55:56 ]
- >>359
煽るわけじゃないが、そんな調子でそんな高機能なユーザーコントロールを 作ろうと思ってるわけ? ちょっと考えれば分かると思うが、たまたま君が実装したいと思っているに過ぎない機能を 都合よく「簡単に」実現してくれる既存のコントロールなんてあるわけないじゃん。
- 362 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 11:01:53 ]
- >>361
まだ夏休みですか
- 363 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:45:30 ]
- >>362
消えろゴミ
- 364 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 12:53:25 ]
- >>362
ところであなたは大学卒業しました?
- 365 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 13:02:04 ]
- フフ、>>364は大卒じゃないのよ
- 366 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 13:05:22 ]
- >>365=中卒ニート
- 367 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 14:28:28 ]
- Fラン共うぜぇよ
- 368 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 15:13:02 ]
- ↑Gラン
- 369 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:02:47 ]
- Bラン
- 370 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:15:35 ]
- 学歴話が好きな奴の人物類型というのは
(1) 学歴コンプレックスのある人間(秋葉原の事件の容疑者タイプ) (2) 学歴以外に縋るものがないタイプ(かなり古いが宮沢喜一系) (3) 学歴コンプの奴を煽って楽しむタイプ(マミーなんとか的な幼稚系) こんなところか。 どっちにしろ他人よりもむしろ「救いがない本人自身を語ってるだけ」、という 簡単で明白な事実に気づくだけの知能が欠けているのは全てのタイプに共通しているようだな。
- 371 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:01:36 ]
- >>359
>簡単に実現する方法はないものでしょうか? ありません。 ".NET エディタ コントロール"で検索してみると みんな苦労してるのがわかると思う。
- 372 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 17:23:37 ]
- >>370
そういうあなたは中卒ですか?
- 373 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 18:52:58 ]
- ごめんなさい、脳卒中です
- 374 名前:351 mailto:sage [2008/09/07(日) 23:10:19 ]
- >>352
>>353 >>354 遅くなりましたがありがとうございます。 プロパティから対象フレームワークの設定はできました。 友人のPCで試してみます。
- 375 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 02:07:17 ]
- 何この自演臭い酷い流れは
- 376 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 02:09:34 ]
- 黙れ自演厨
- 377 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 06:29:54 ]
- 早く前の流れに戻らないかしら。
- 378 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 06:34:38 ]
- >>373
×ごめんなさい、脳卒中です ○ごめんなさい、中卒脳です
- 379 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 14:31:04 ]
- >>371
>ありません やはりそうでしたか。 >".NET エディタ コントロール"で検索してみると >みんな苦労してるのがわかると思う。 わかりました。どうもありがとうございました。ではまた。
- 380 名前:デフォルトの名無しさん [2008/09/08(月) 15:38:29 ]
- C#2.0で質問です。
Winアプリを作成しようとしています。 WEBアプリであればSessionのコレクションに特定のKey名でシリアライズできるオブジェクトを入れて 各画面で遷移した後も使いまわせるようにできると思うのですが Winアプリで同じようなことを実現するにはどのようにすればよいでしょうか? エントリポイントの static void Main() { } この辺りでRunさせる前に作成して保持しておきたいのです。 何か良い方法があればご教授いただけませんか?
- 381 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 16:16:44 ]
- 静的なHashtableにでも入れときゃいいんじゃない?
俺はやらんけど。
- 382 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 17:00:07 ]
- >>380
遷移実行は遷移を管理するObjectに依頼する。 画面は遷移引渡し用Method、遷移元取り込み用Methodを用意する。
- 383 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 17:24:44 ]
- >>381-382
レスありがとうございます。 >>381 その方法だとすごく簡易にできそうです。 >>382 画面で順々に渡していくわけですね。 遷移絡みで一元管理ができそうです。 今回は一寸時間もあるので>>381+>>382の手法を組み合わせて 勉強しながら進めてみようと思います。 ありがとうございました。
- 384 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 18:12:38 ]
- >>378
ちょwwくそワロタww
- 385 名前:デフォルトの名無しさん [2008/09/08(月) 18:32:55 ]
- 何この糞ップリww
- 386 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 23:08:02 ]
- 一般に、大卒以上の学歴を有しながら、中卒以下の人間を指す
- 387 名前:デフォルトの名無しさん [2008/09/08(月) 23:23:51 ]
-
にっぽんサイコー!:?BS11「にっぽんサイコー!」第1回2008/3/9(日)放送 www.team-nippon.com/team_nippon/cgi-bin/player.pl?channel=j_channel&order=25&mode=0&self=1 まあ一辺聴いてみてください。いかに日本が自民党に巻き上げられて官僚やゼネコンに配ってるかwわかります。 いかに口うまく騙されてるかwわかります。 日本Channel:築地があふれた!!壊すな築地7.12東京大行進 www.love-nippon.com/cgi-bin/player.pl?channel=j_channel&order=1&mode=0&self=0 ソトコト 憂国呆談 www.sotokoto.net/yukokuhodan/yukoku_2.html#upside2 断固田中康夫を首相にしましょう!!
- 388 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 23:34:08 ]
- VC#2008Express SP1でプログラム書いてるんですが、PerformanceCounterが思ったとおりに動いてくれません。
CategoryName : Processor の CounterName : % Idle Time や CounterName : % Processor Time などの値を取得すると「0」しか返ってこない。 MemoryのAvailable MBytesや% Committed Bytes In Useなどは正しい値が返される。 正しい値とは、perfmon.exeで表示している値との比較。 Processorの% Idle Timeなどの常に「0」と表示される値は perfmon.exeでは全部0以外の値が表示されている。 という状況です。 ソースの該当部分は PerformanceCounter pc1; pc1 = new PerformanceCounter(); pc1.CategoryName = "Processor"; pc1.CounterName = "% Idle Time"; pc1.InstanceName = "_Total"; Console.WriteLine(pc1.NextValue()); です。 どこかの掲示板で同じ症状で悩んでる人がいたんですが、誰もレスつけてなくて解決できたのかもわからない状況… なにか間違っているところありますか?
- 389 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 23:55:35 ]
- while(true){
Console.WriteLine(pc1.NextValue()); System.Threading.Thread.Sleep(100); } ちょい試してみな
- 390 名前:388 mailto:sage [2008/09/09(火) 00:01:03 ]
- >389
あぁぁぁぁorz わかりますた… % Idle Timeとかって初期値が必ず0なのね… はずかしぃぃぃ
- 391 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:51:30 ]
- System.Environment.CurrentDirectory;
のような感じでファイル名も取得したいのですがどうしたらいいでしょうか? System.Environment.CurrentDirectory ディレクトリの情報しか取得してくれないんです
- 392 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:52:50 ]
- >>391
何のファイル名を取得したいの?
- 393 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:56:06 ]
- 実行ファイルのパスなら、
Application.ExecutablePath
- 394 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:56:24 ]
- >>392
説明不足ですいません ttp://dobon.net/vb/dotnet/system/explorecontextmenu.html ここを参考にして、右クリックメニューからプログラムを開くようにしたんですが、 その右クリックしたファイル名を取得したいんです。 どうしたらいいでしょうか。
- 395 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 03:53:27 ]
- >>394
右クリックメニューからどのプログラムで開くように設定したの? 登録したプログラムが君の作ったプログラムだったらMain関数の引数がまさしくファイル名になるけど、 たとえばnotepad.exeで開くようにしたのだったら当然ファイル名を取得することはできないよ? notepad.exeは君の作ったプログラムじゃないから当たり前なんだけどさ。 何がしたいのか全然想像できん。 相当初心者みたいだから、もっと具体的に説明してくれないと答えにくい質問だわ。
- 396 名前:デフォルトの名無しさん [2008/09/09(火) 05:21:33 ]
- >>394
ようわからんが Main(string[] args) { string fileName = args[0]; } でいいんじゃね? ちなみに、リンク先の方法は「フォルダ」をプログラムに関連づける方法だから、 「ファイル」を関連づけたいなら dobon.net/vb/dotnet/system/associatedapp.html こっちの方だと思うんだけど。
- 397 名前:デフォルトの名無しさん [2008/09/09(火) 12:06:27 ]
- List<string> a = new List<string>();
a.add("aaa"); ・・・ ときて、aの要素すべてを"\\"で連結してひとつの文字列にしたい
- 398 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 12:12:30 ]
- String.Join
- 399 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 12:19:25 ]
- サンクス
string.Join("\\", a.ToArray()); でできた
- 400 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 13:42:05 ]
- >>395はリンク先読んでからレスしろよw
- 401 名前:395 mailto:sage [2008/09/09(火) 15:08:47 ]
- >>400
当然読んだに決まってるじゃん。 リンク先のサンプルは右クリックメニューにオリジナルメニューを追加させるようなアプリのサンプルなんだから、 右クリックで開かれるファイル名を取得したいという質問自体が意味不明なんだよ。 あくまでレジストリにキーを追加するだけのアプリと、コマンドライン引数を取得することは全く結びつかない。 コマンドライン引数を取得したいのならばそう言えばいいだけで、リンク先の記事は何の意味もなさないんだよ。
- 402 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 15:40:12 ]
-
政治板にあった的確なAAを紹介します!! ↓ 【選挙前】 郵政民営化に賛成か否か 国民投票です 自民党↓ 小泉 , - ,----、 (U( ) | |∨T∨ (__)_) 国民様、へへへーっ ↓ ↓ 【選挙後】 自民党↓ ガソリン暫定税率維持 後期高齢者制度制定 ∧_∧ 日雇い派遣 制限撤廃 ( ´∀`) 郵政造反組復党 ( /,⌒l & 天下り先独法の特別会計ジャジャ漏れは完全に温存 !! | /`(_)∧_0. & 二人の総理投げ出し他人事で辞任! (__)(´∀`; )⊃⌒⊃ ← ← ← (一般民間人) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- 403 名前:デフォルトの名無しさん [2008/09/09(火) 16:18:33 ]
-
ageろよww
- 404 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 19:14:16 ]
- コピペ君って馬鹿だな、まで読んだ。
- 405 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 21:29:25 ]
- >>396
ありがとうございます。 期待していた動きをさせることができました。
- 406 名前:デフォルトの名無しさん [2008/09/10(水) 11:30:15 ]
- メソッドの引数にプロパティがたくさんあるクラスを渡そうとしています。
引数を渡す時に ref をつけて渡した方が、実行速度上 ( 微々たるものかもしれませんが ) 有利になるのでしょうか。 ref を付けずに渡すと、メソッドに渡す時に引数がコピーされると、プログラミング c# に書かれていました。 どうなのでしょうか?
- 407 名前:デフォルトの名無しさん [2008/09/10(水) 11:31:53 ]
- 用途による としか言いようがない
- 408 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 11:32:39 ]
- されない。
そう書いてあったならその本が間違ってる。 もしくは値型についての話と混同してる。
- 409 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 11:33:50 ]
- 厳密にはクラスでも引数はコピーされるが、今の話はそういう話ではないはず。
- 410 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 11:36:47 ]
- 大きな値型なら速くなる
クラスなら付けない方がたぶん速い
- 411 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 11:37:43 ]
- そうじゃなくて、そのメソッドをよく呼ぶときに実行速度が問題となるってこと。
- 412 名前:デフォルトの名無しさん [2008/09/10(水) 11:42:57 ]
- >>407-411
お返事ありがとうございます。 なかなか難しいですね。 私の理解としては、メソッドの引数が、 クラスの場合→インスタンスのアドレスが渡される ( コピーされない ) 値型の場合→ボックス化?され ( つまりコピーされ ) 渡される という理解ですが、良いのでしょうか? クラスの場合に、そのクラス中に値型のフィールドが含まれることもあるかと思いますが、そちらはよく分かってません。
- 413 名前:デフォルトの名無しさん [2008/09/10(水) 11:43:13 ]
- refキーワードは速度じゃなく、メンバの使われ方が問題なんだが
- 414 名前:デフォルトの名無しさん [2008/09/10(水) 11:44:14 ]
- よく考えなくても分かるけど、参照がコピーされたのに、参照に含まれる一部が実体とかおかしいだろ
- 415 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 11:47:40 ]
- 意味が分かりませんw
- 416 名前:デフォルトの名無しさん [2008/09/10(水) 11:47:47 ]
- >>414
なるほど。 では、まとめると、 クラスの場合→インスタンスのアドレスが渡される ( コピーされない ) クラスのメンバに値型が含まれる場合→インスタンスがコピーされアドレスが渡される 値型の場合→ボックス化?され ( つまりコピーされ ) 渡される という理解ですが、良いのでしょうか?
- 417 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 11:52:17 ]
- とりあえずいろいろコード書いて試してみりゃいいよ
- 418 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 11:57:14 ]
- >>416
これ読んどけ。じっくり読むと理解できるから。流して読むと川俣ワールド迷走することになるが www.atmarkit.co.jp/fdotnet/csharp_abc2/csabc2_006/cs2_006_01.html
- 419 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:06:54 ]
- >>414だいぶ混乱してる。
少なくとも今の話にはボックス化は無関係。 ただしコピーされるってのは間違ってない。 値型メンバはクラスのインスタンスにそのまま埋め込まれてる。 参照型メンバはクラスのインスタンスに、まあ君の理解で言うとアドレスが埋め込まれてる。
- 420 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:09:11 ]
- >>416
× クラスのメンバに値型が含まれる場合→インスタンスがコピーされアドレスが渡される ○ クラスのメンバに値型が含まれる場合→インスタンスを保持している変数のアドレスが渡される // 例 class Hoge { private string msg; Hoge(string s) { msg = s; } public override string ToString() { return msg; } static void foo(ref Hoge fuga) { // Main関数のhogeが指しているインスタンスが別のものになる。 fuga = new Hoge("Foo"); } static void Main(string[] args) { Hoge hoge = new Hoge("Hello"); Console.WriteLine(hoge.ToString()); foo(ref hoge); Console.WriteLine(hoge.ToString()); } }
- 421 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:15:25 ]
- 値型は実体がコピーされる。
ただし、参照型に含まれる値型は値型の参照がコピーされる。 以上
- 422 名前:デフォルトの名無しさん [2008/09/10(水) 12:15:53 ]
- もう難しすぎる!
- 423 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:16:01 ]
- >>413
XNA Frameworkとか覗いてみたらわかるよ 決して良い使い方だとは言えないんだけど
- 424 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:23:02 ]
- そういう人が書いた記事よりもMSDNを熟読するほうがいいよ。
- 425 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:24:31 ]
- そりゃC#のボキャブラリだけで考えていたら難しいだろう
Cかアセンブラで関数のメカニズム(スタックフレーム)について 勉強してから戻ってくるといいよ そういえばMSILの逆アセンブラなんかもあったような
- 426 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:30:05 ]
- でたらめが入りまじってるから、
ちゃんとした書籍で調べることをお薦めする。 ああ、ひと目でわかるとか、あんなのは駄目だぜ。 こちらはVB版だが、確か同じ間違いの記述がある。
- 427 名前:デフォルトの名無しさん [2008/09/10(水) 13:35:40 ]
- >>417-426
スタックやヒープなどからいろいろと勉強して理解してみます。 アドバイスありがとうございます。 逆に ref を使うときってどういう時に使ってますか?
- 428 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 13:42:06 ]
- たまにprivateメソッドで実装の都合で使うかも
外から見えるメンバには絶対使わないな outは稀に使うけど
- 429 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 14:31:35 ]
- 確かにrefはめったにない。
outはたまに使う。
- 430 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 14:34:39 ]
- COMインターフェイス絡みだと[In] refなんてザラだけどこのスレ的にはあんまり関係ないな
- 431 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 14:39:29 ]
- C#2.0 Winアプリで超基本を教えてください。
DataTableをDataSourceプロパティにバインドしたときは ValueMemberとDisplayMemberを指定することでSelectedItemからTextとValueが別々に取得可能ですが 自分で コンボ.Items.Add メソドを使用して項目を追加する場合に SelectedItemからTextとValueを別々に取得できるようにするにはどのようにすればよいでしょうか? 自分でデータテーブルを作成するときに加工しておけばよいのでしょうが、 それはしない方向で実現する手段があればお教えください。 具体的には データベースにId Name のカラムがありそれぞれ int,string の型になっています。 この先頭に * 全て という項目を入れたいのですが DBから取得してきたDataTableのId列はint型なので先頭項目を挿入できないのです。 値を取得してきた際、*でなければ全て数値であることが保障されているという前提です。 よろしくお願いします。
- 432 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 15:39:31 ]
- DBNullでいいじゃん?とは思うけど
stringのプロパティ二つ持ったクラス用意 DisplayMember/ValueMemberにそれぞれのプロパティ名設定 一つずつ用意したクラスに詰替え Items.AddよりDataSourceに配列として設定した方がよくね?
- 433 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 15:45:45 ]
- >>432
>Items.AddよりDataSourceに配列として設定した方がよくね? 確かに・・・ まず提案していただいた方法試してみます! ありがとうございました。
- 434 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:16:10 ]
- DBの項目がIntならそのまま更新できないから「全て」が選ばれたときにどうやって更新するのかは気になるところ
- 435 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:26:13 ]
- ArgumentNullExceptionをスローするときに
引数名を文字列で直接指定するのって格好悪い気がするんだけどいい方法ある?
- 436 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:27:24 ]
- 気のせいだ
- 437 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:39:51 ]
- >>435
ない。 リファクタリングと相性が悪いので、どうにかしようという話が出てたが まだ実現していない。
- 438 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 18:05:24 ]
- internal static Exception ArgumentNull(Delegate method, int paramIndex) {
ParameterInfo[] parameters = method.Method.GetParameters(); return new ArgumentNullException(parameters[paramIndex].Name); } void Hoge(object arg) { throw ArgumentNull(new Action<object>(Hoge), 0); } こういうのはどうだろう
- 439 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 18:11:12 ]
- 今度は引数の数や順番の変更に弱くなるぞ
- 440 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 22:58:27 ]
- 質問です。
WinXPにてadmin権限でログイン後 作成したアプリをインストーラからインストール。 アプリは、カレントディレクトリに対してフォルダを作成したり ファイルをダウンロードしたりします。 admin権限でログインしているときはうまく動作するのですが、 フォルダに、ユーザからのアクセス件が無いので動作しません。 以下のコードでアクセス権を付加しようとしていますがうまくいきません。 どこが間違っているでしょうか? System.Security.AccessControl.DirectorySecurity dSecurity = Directory.GetAccessControl(Application.StartupPath); dSecurity.AddAccessRule( new System.Security.AccessControl.FileSystemAccessRule( System.Environment.UserName, System.Security.AccessControl.FileSystemRights.FullControl, System.Security.AccessControl.AccessControlType.Allow )); Directory.SetAccessControl(Application.StartupPath, dSecurity);
- 441 名前:440 mailto:sage [2008/09/10(水) 23:00:07 ]
- 質問訂正です。
WinXPにてadmin権限でログイン後 作成したアプリをインストーラからインストール。 アプリは、カレントディレクトリに対してフォルダを作成したり ファイルをダウンロードしたりします。 admin権限でログインしているときはうまく動作するのですが、 権限無しのユーザでログインすると フォルダにユーザからのアクセス件が無いので動作しません。 以下のコードでアクセス権を付加しようとしていますがうまくいきません。 どこが間違っているでしょうか? System.Security.AccessControl.DirectorySecurity dSecurity = Directory.GetAccessControl(Application.StartupPath); dSecurity.AddAccessRule( new System.Security.AccessControl.FileSystemAccessRule( System.Environment.UserName, System.Security.AccessControl.FileSystemRights.FullControl, System.Security.AccessControl.AccessControlType.Allow )); Directory.SetAccessControl(Application.StartupPath, dSecurity);
- 442 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 23:25:25 ]
- >>441
フォルダのアクセス権がないユーザーが、そのフォルダのアクセス権を変更することはできない。 当たり前のことですな。
- 443 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 23:32:08 ]
- お前馬鹿かよ。
何やろうとしてるか冷静に考えてみろ。
|

|