1 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 14:57:21 ] このスレッドは 「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。 ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、 勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。 >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 前スレ ふらっとC#,C♯,C#(初心者用) Part43 pc12.2ch.net/test/read.cgi/tech/1248573707/
618 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 22:06:36 ] Camel形式とPascal形式は違う camelCase PascalCase
619 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 23:51:21 ] >>603 コードが読みにくい。 まさか実際のソースもそんな書き方して無いよね? 趣味で作ってるのならいいんだけどさ。 で、問題の方だけど、ドロップダウンリストに値を設定してるところがダメなんじゃない? InfoPathは使ったこと無いからよくわからないけど。
620 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 00:48:01 ] >>618 一応、これも書いておかないと Upper Camel = Pascal Lower Camel = 狭義のCamel
621 名前:デフォルトの名無しさん [2009/09/09(水) 09:22:35 ] Bitmap BmpBuf = new Bitmap("C:\\2008052314460001.jpg"); Picture1.Image = BmpBuf; 画像が表示されません
622 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 09:29:10 ] そうか
623 名前:デフォルトの名無しさん [2009/09/09(水) 09:35:56 ] せめてヒントだけでも ><。。
624 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 10:20:41 ] もうimagelocation でやれwwwww
625 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 10:41:29 ] >>621 デバッグしてそこ実行時にBmpBufが有効か見てみたか? Picture1ってどのコントロール?
626 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 10:42:26 ] "C:\\2008052314460001.jpg" を @"C:\2008052314460001.jpg" こうしたい
627 名前:デフォルトの名無しさん [2009/09/09(水) 10:48:28 ] >>625 BmpBufはnullでなくサイズプロパティは読み込んだ画像のサイズでした >>626 あーそういう意味だったのか @使います
628 名前:デフォルトの名無しさん [2009/09/09(水) 10:50:00 ] >>625 Picture1はPictureBoxです
629 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 10:53:33 ] それはちゃんとFormに貼り付けられてるのか 何かのコントロールの後ろに隠れてないか サイズが0,0になってたりFormの表示範囲外にいってたりしてないか
630 名前:デフォルトの名無しさん [2009/09/09(水) 11:18:33 ] >>629 もう一度一から貼り直してやってみます コードは間違ってはいませんよね? 再描画されないかもしれないのはおいといて
631 名前:デフォルトの名無しさん [2009/09/09(水) 11:23:00 ] >>630 うまくいきました!! デザイナのコードが壊れてたみたいです
632 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 11:23:16 ] >>611 paintでGraphicsのDrawImage使うといい。
633 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 12:12:39 ] C++のデザパタに片足突っ込んだ程度の経験なんですが、 今回.NET Framework 4.0が面白そうな事になってるのを聞き及び、C#に手を出してみようかと思っています。 C#のオススメの教本とかあったら教えてもらえませんでしょうか?
634 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 12:20:31 ] .NET4ってそんなに面白そうなフィーチャーあったっけ DLRやPLINQなんか.NET触ったことない人には全く分からないだろうし
635 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 12:27:34 ] >>632 ドラッグ中MouseMoveイベントで毎回それやってpictureBoxリフレッシュすると滑らかにならず・・・
636 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 12:49:42 ] >>635 どんな環境でどうやってんの? こっちで試す限りでは普通になめらかに動くよ。 Bitmap毎回作ってるとか?
637 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 13:43:13 ] >>636 よっぽどでかくなきゃそれでもまぁいけると思うぞ Disposeしてなさそうだけど(Disposeいるっけ?)
638 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:31:59 ] breakについて教えてください。 for (int i = 0; i < 10; i++) { foreach(string line in lines) { if {//条件。 break; } } } で、ifの条件が一致したとき、この位置にbreakを書くと、foreachは終了しますが、外側のforは終了しません。 どこに書けば、外のforも終了できますか?
639 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:36:37 ] for (int i = 0; i < 10; i++) { bool exit = false; foreach(string line in lines) { if {//条件。 exit = true; break; } } if (exit) break;//外のforを抜ける } もしくは, for (int i = 0; i < 10; i++) { foreach(string line in lines) { if {//条件。 goto EXIT; } } } EXIT:
640 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:40:30 ] >>639 ラベルに命令はんないといけないから EXIT:;じゃね?
641 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:43:09 ] そうだけど後にステートメントが続くならセミコロンは普通書かない
642 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:47:43 ] >>641 コンパイル通るの? 前ここではまったんだけど
643 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:48:38 ] 別のアプローチとしてはforを別の関数に切り出してreturnで抜けるというのもある。
644 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:53:44 ] >>642 通る例 EXIT: Console.WriteLine(x); } 通らない例 EXIT: } とにかく後にステートメントがあればいい。セミコロンだけの場合は空のステートメントがあるとみなされる。
645 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:55:44 ] >>644 じゃあ>>639 は嵌るべ
646 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 22:03:03 ] >>639 thanks.
647 名前:デフォルトの名無しさん [2009/09/09(水) 23:37:40 ] C♯で拡大鏡はできますか?
648 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 23:49:15 ] うん
649 名前:デフォルトの名無しさん [2009/09/10(木) 00:27:42 ] とあるクラスにA1〜A5というプロパティがあるんですが 配列のindexのように参照する方法はあるでしょうか?
650 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 00:34:43 ] ない
651 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 01:17:53 ] >>649 A1〜A5の型が同じなら、とあるクラスにインデクサを実装すればいい。 まぁ、こんな事するんじゃなくてA1〜A5を格納するAってリストを作るべきだ。
652 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 01:58:11 ] .netってスタティックリンクライブラリって使えないの? DLLは作れるみたいだけどLibファイルのようなものは作れないのかな
653 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 02:00:44 ] 必要ないだろ
654 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 02:05:08 ] 作れるよ
655 名前:デフォルトの名無しさん [2009/09/10(木) 06:30:54 ] >>648 どんなメソッドを使えばできますか?
656 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 07:33:35 ] Graphics.CopyFromScreen
657 名前:デフォルトの名無しさん [2009/09/10(木) 12:06:35 ] 重大ニュース スレは★30までいく 【国際】 中国 「IT製品、ソースコード開示せよ」…日本側が撤回求めるも、予定通り実施へ★4 tsushima.2ch.net/test/read.cgi/newsplus/1252535413/ 「ソースコード開示せよ」…中国が外国企業に要求 pc11.2ch.net/test/read.cgi/prog/1221835452 23 :名無しさん@十周年:2009/09/10(木) 02:28:25 ID:UeD78g5r0 李鵬が言ってた、20年後に日本なんてなくなるって、こういう事か。 40 :名無しさん@十周年:2009/09/10(木) 02:35:03 ID:BKKfZepB0 トヨタがプリウスで儲けれるのも来年までなんだね。 鳩山幸さんはサイエントロジーというカルトと関係があるという噂があります。 an ★tikimchi.see★saa.net/art★icle/127578850.html ↑ 日本アンチキムチ団 鳩山幸さんの旧姓が不明だそうですよ。 764 名前:可愛い奥様[] 投稿日:2009/09/06(日) 01:04:07 ID:/WrcABwtO 北海道苫小牧在住の者ですが、老人ホームで暮らす朝鮮人のお婆ちゃんから聞いた話です。 幸夫人のごお父様は中国人ではなく、キム・ジョンウォン(漢字不明)という朝鮮北部出身の貿易商だったようです。 戦後は日本に渡り、幸さんが渡米するまでは神戸の商社に勤めていたようです。 キムさんは幸さんが渡米した直後、北海道室蘭に引っ越し、貿易商を営みながら総連支部の設立に尽力されたと話しておりました。 中国語・英語・ロシア語がお上手だったようですね。 【ファーストレディー】鳩山幸をウォッチするスレ 2 hideyoshi.2ch.net/test/read.cgi/ms/1252279762/
658 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 14:33:30 ] >>652 ILMerge を使えば、複数のアセンブリを一つにできる。
659 名前:デフォルトの名無しさん [2009/09/10(木) 15:20:01 ] DataRowの各項目はキャストしないとobject型のようなんですが、 if (rowA["HOO"] == rowB["HOO"]) みたいな比較は、右辺左辺両方が同じ型?(stringとかint)であることが事前に分かって いれば、キャストせずに比較しても正しい比較結果が得られますでしょうか?
660 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 15:23:42 ] 得られません。常に参照比較になってしまいます。 Object型のままで値を正しく比較したければEqualsメソッドを使います。
661 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 20:50:57 ] プロセスの終了について質問があります。 写真をまとめてみたいと思って、 string[] files = Directory.GetFiles(@"c:\photo", "*.jpg"); foreach(string file in files) { photoProcess = new Process(); photoProcess.StartInfo.FileName = file; photoProcess.Start(); } Thread.Sleep(1*60*1000); if (! photoProcess.CloseMainWindow()) {photoProcess.Kill();}photoProcess.Close();photoProcess.Dispose(); とやって見たところ、開いて1分待つところまではよいのですが、最後に閉じるのが1枚だけで、あとのウィンドウは開いたままになってしまいます。 こういう場合は、どうやればぜんぶのウィンドウを一括してクローズできるか、ご教示いただけないでしょうか。
662 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 20:51:47 ] >>652 csc.exe /target:module ちなみに Q. Visual Studio 開発環境でこのコンパイラ オプションを設定するには A. Visual Studio 開発環境では、モジュールの作成はサポートされていません。
663 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 20:54:39 ] >>661 各Processオブジェクトを配列にでも突っ込んで、 終わるときはそれらを順にCloseMainWindowしてけばいい >>662 moduleもダイナミックリンクだぜ
664 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 20:55:39 ] >>661 関連づけされてるアプリ次第。別々にプロセスが立ち上がるなら、 ここのプロセスをそれぞれ閉じるしかないよ。
665 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 21:06:46 ] 終了もforeachすればいいのかなとは漠然と思うのですが、この方法でcloseするにはそれぞれのプロセス名を知る必要があって、それを取得する方法がわからずにおります。 >>663 オブジェクトを配列につっこむ方法を教えてください。 >>664 プロセスを取得してってこと? プロセス名だと、ファイル名まではわからないんじゃなかったでしたっけ? ペイントだと、mspaint.exeとか?
666 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 21:10:00 ] >>665 違う。アプリによっては、ひとつのプロセスで複数のウィンドウを開く形になる。 たとえば、デフォルト状態の Explorer とかね。 その場合、最後とのプロセスを殺せば、勝手にまとめて死んでくれるってわけ。 #「ここのプロセス」は「個々のプロセス」ね。
667 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 23:13:46 ] >終了もforeachすればいいのかなとは漠然と思うのですが、この方法でcloseするにはそれぞれのプロセス名を知る必要があって、それを取得する方法がわからずにおります。 なんためにphotoProcess変数を使ってるんだ? 同じことを配列(まあListとかのがいいけど)に入れる形でやればいいだけだろ?
668 名前:デフォルトの名無しさん [2009/09/10(木) 23:14:57 ] >>656 これは画面キャプチャだね。 これで取得したオブジェクトを拡大させるってこと? やはり難しそうだなぁ。
669 名前:デフォルトの名無しさん [2009/09/10(木) 23:48:01 ] 仮想リストビューに1000件くらいのアイテムを表示して 一件ずつループ処理でsubitemを書き換えてリストビューのRefreshメソッドを実行するのですが 書き換えた内容が描画されない 表示するアイテムリストとアイテムはそれぞれ専用のクラスを作って管理してて、 書き換え後にアイテムのクラスを見るときちんとデータが入ってる どんな原因が考えられる?
670 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 23:52:09 ] ListView.RetrieveVirtualItemはちゃんと発生してますか?
671 名前:669 mailto:sage [2009/09/10(木) 23:56:05 ] >>670 発生しておりまする リストビューが表示されたときにはCSVから読込まれたデータが 表示されてる状態
672 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 00:13:36 ] 微妙に671の回答がずれてる気がしないでもない Refreshしたときに、RetrieveVirtualItemがちゃんと表示領域分発生してるんだね?
673 名前:669 mailto:sage [2009/09/11(金) 00:22:03 ] ステップインで確認したらちゃんと発生してますよ てか、RefreshでRetrieveVirtualItemが発生しないことってあるのん?
674 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 00:34:28 ] 確認だよ確認 質問者の画面は見れないんだから で、RetrieveVirtualItemで生成するListViewItemにはちゃんと変更後のデータ入れてる?
675 名前:669 mailto:sage [2009/09/11(金) 00:41:30 ] 入ってますよ
676 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 00:43:39 ] ちなみにBeginUpdateとEndUpdate使っても駄目そうですか?
677 名前:669 mailto:sage [2009/09/11(金) 00:56:49 ] だめでした やろうとしてる編集を最初からCSVにしておくと 読み込むときにきちんと描画される 只単にアイテムを編集しただけでRetrieveVirtualItemでやってることは 最初に読込むときと全く同じなんだけどな なんか足りないのか
678 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 01:07:45 ] >>667 できました。ありがとうございます。
679 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 01:08:24 ] コード見ないと分からんね
680 名前:669 mailto:sage [2009/09/11(金) 01:14:53 ] private void listView1_RetrieveVirtualItem(object sender, RetrieveVirtualItemEventArgs e) { if (0 <= e.ItemIndex && e.ItemIndex < ItemList.Count) { e.Item = ItemList.Items[e.ItemIndex]; } } private void button1_Click(object sender, EventArgs e) { foreach (Item item in ItemList.Items) { item.SetResult("○"); listView1.Refresh(); } } コードこんだけ
681 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 01:29:03 ] listView1.Refresh();をループから出す
682 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 01:36:07 ] 起きてる人ー みんなでH-IIBロケットの打ち上げを見守ろう! 2時ごろ打ち上げだよ! www.jaxa.jp/countdown/h2bf1/live/h2bf1_300k_j.asx
683 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 02:47:38 ] 板違い。 まぁ、俺も別のとこで打ち上げ見てたけどね。
684 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 08:18:35 ] .asxとか死ねよと
685 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 09:43:30 ] 設定ファイルを作ってそこから設定を読み込もうとしています 設定ファイルはこんな感じです #setting.txt #aの値を書き込んでください a=1 #bの値を書き込んでください b=hoge #cの値を書き込んでください c=hoge hoge #(#以外でも構いません)で始まる行はスキップ、それ以外の行は=の右辺を取得して変数に代入 このような場合はどうすればいいのでしょうか
686 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 09:51:04 ] string line; に対して、 line[0] == '#' line.Split('=')[1] か、正規表現使うか。
687 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 09:52:57 ] >>685 iniファイルを連想した。 あれのコメントは;だったが。 もし、iniファイルで…ということならWin32APIを呼び出せばOK
688 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 09:58:29 ] フォーマット変えていいならXMLを使うことを強くお勧めする XmlSerializerとか使えば一瞬でできる
689 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 10:23:27 ] >>680 Item型は?
690 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 10:38:53 ] >>686-688 アドバイスを参考に調べてみます ありがとうございました
691 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 11:35:54 ] 【国際】 中国 「IT製品、ソースコード開示せよ。情報漏洩はないから」…日本側が撤回求めるも、予定通り実施へ★5 ttp://tsushima.2ch.net/test/read.cgi/newsplus/1252552869/
692 名前:669 [2009/09/11(金) 12:50:04 ] Itemクラス class Item : ListViewItem { string _columns[] = new string[3]; public Item(string[] columns) { _columns = columns } public Column0 { get { return _columns[0]; } } public Column1 { get { return _columns[1]; } } public Column2 { get { return _columns[2]; } } } 今職場だから思い出して適当に書いてみたけどこんな感じ 何の変哲もない保持用クラス
693 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 14:13:14 ] SetResultメソッドとやらでSubItems[n].Textに転写してる?
694 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 14:35:54 ] 肝心な部分が書いてないっていうね
695 名前:685 mailto:sage [2009/09/11(金) 17:51:22 ] 頭こんがらがってきた;; class Program { //第一引数にファイルパス、第二引数にオプション名を入力 static void Main(string[] args) { string line = "", option_value = ""; using (StreamReader sr = new StreamReader(args[0], Encoding.GetEncoding("Shift_JIS"))) { do { line = sr.ReadToEnd(); if (line.Split('=', '\n')[0] == args[1]) { option_value = line.Split('=', '\n')[1]; break; } } while (line != ""); } Console.Write(option_value); } } 行頭#スキップがどうすればいいのわかりません…
696 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 17:56:15 ] そんなもんif(line[0]=='#')continue;でいいだろ
697 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 18:01:42 ] 素直にGetPrivateProfileStringとかInt使ってくれない? 面倒くさいからさ。
698 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 18:05:43 ] よく見ると色々おかしい気がする
699 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 18:09:59 ] #以前に滅茶苦茶すぎる
700 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 18:16:47 ] File.ReadAllLinesの方が良くねえ? ファイルを行ごとに取り扱うのにReadToEndで読む必要性が分からん。 string optionValue = ""; string[] lines = null; try { lines = File.ReadAllLines(args[0], Encoding.GetEncoding("Shift_JIS")) }catch{ lines = new string[0]; } foreach (string line in lines) { // 空行と先頭'#'のスキップ if ((line == String.Empty) || (line[0] == '#')) { continue; } //行をトークン分解 string[] toks = line.Split('='); if ((toks.Length == 2) && (toks[0] == args[1])) { optionValue = toks[1]; break; } } Console.Write(optionValue);
701 名前:685 mailto:sage [2009/09/11(金) 19:09:59 ] ごめんなさい… あっちこっちのをペタペタ貼ってたらひどいことに… >>696 >if(line[0]=='#')continue; 文字列からそうやって一文字抜きだせるんですね 「なんで配列?」ってよくわかってませんでした ありがとうございます >>697 >GetPrivateProfileString こういうのもあるんですね 調べてみます >>698-699 もうしわけありません… >>700 >ReadToEnd ReadLineにしてたつもりが、いつのまにか入れ替わってましたorz わざわざありがとうございます これ見てもうちょっと勉強してから出直してきます
702 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 19:21:44 ] >>701 var setting = File.ReadAllLines("setting.txt") .Where(s => s[0] != '#') .Select(s => s.Split('=')) .ToDictionary(ar => ar.First(), ar => ar.Last()); でも、設定保存ならXmlSerializerのほうがいいよ。
703 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 19:25:38 ] XmlSerializerだと人手で読み書きするのが面倒臭いじゃん だから未だにiniの需要が一定量あるんだろう
704 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 19:29:38 ] 何にせよ自作は時間の無駄 #を値の中で使いたいときとかどうするんだ 人間にとっての読み書きのしやすさを重視するならiniでもいいし, 属性形式のXMLを使うという手もある(XmlSerializerで可能)
705 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 19:33:17 ] キーはユーザが決めるモンじゃないから別に値の中で使っても良いんじゃないかな
706 名前:704 mailto:sage [2009/09/11(金) 19:33:24 ] すまん行単位か
707 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 19:38:32 ] 作ってみたいだけかもしんないし、あんまとやかく言うのも野暮。
708 名前:685 mailto:sage [2009/09/11(金) 19:47:42 ] たくさんのご意見ありがとうございます いろいろ調べてみましたが、>>700 さんのがやりたいことに一番近い(ような気がします) 他の方々の意見もとても勉強になりました 基本からもう一度やりなおすことにしますorz
709 名前:669 [2009/09/11(金) 20:23:33 ] >>693 何回もレスして貰って申し訳ないけど、最初に言ったとおり RetrieveVirtualItemで書き換えられたItemがe.Itemにセットされてるところまで 確認してるんですよ e.Itemにちゃんと書き換えられたItemがセットされてるにのListViewの表示が更新されないので 嵌ってるわけですよ
710 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 20:27:54 ] ごちゃごちゃうるせえ SetResultのコード出せよ って言ってるんですよ
711 名前:669 mailto:sage [2009/09/11(金) 20:57:38 ] public void SetResult(string s) { _column[3] = s; } 少し感じ悪いレスしてしまって申し訳ないと思ってるが ↑を見てなにかわかるとは思えないっす 例えば private void listView1_RetrieveVirtualItem(object sender, RetrieveVirtualItemEventArgs e) { if (0 <= e.ItemIndex && e.ItemIndex < ItemList.Count) { e.Item = new Item(ItemList.Items[e.ItemIndex]).Columns; } } としてやれば、リストに表示されるアイテムが毎回動的に生成されるわけだから 表示も当たり前に更新される訳だが、VirtualModeのお作法として正しいのだろうか VirtualModeのDocumentが少なすぎて仕様がわからん・・・
712 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 21:06:11 ] なんでコード出てくるたびに仕様が変わってんだ ItemクラスのColumnsプロパティって何だよそんなの前回はなかったじゃねぇか とにかくSetResultでSubItems[3].Textにもsを設定しろ
713 名前:669 mailto:sage [2009/09/11(金) 21:16:56 ] 例えばって言ってるじゃん だいたい何でstring同士で出したり入れたりしてんのに Textプロパティなんていうめんどくさいものつくらにゃならんの? わざわざSetResultメソッドの為だけにTextプロパティ作るの? きちんと代入できてるって言ってるのにそこにこだわる理由はなに?
714 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 21:20:41 ] 何だこいつ 質問してる身なのに偉そうだな
715 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 21:24:50 ] なんで例えるんだよ ItemはListViewItemを継承している RetrieveVirtualItemではItemのインスタンスを返している Itemはフィールドにstring[]を保持している ここまでは合ってるよな? ListViewがView.Detailsのときに各カラムに表示できるのは ListViewItemのSubItemsに格納されているListViewSubItemのTextプロパティだけ Itemがフィールドに何持ってようが関係ない プロパティ作れなんて誰も言ってない
716 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 21:27:48 ] 昨日から思ってたけど>>669 の態度酷すぎだろ。 あとね、documentのせいではなく、自分の能力のせいだと思われ。 この程度の事も分からないとは。
717 名前:669 mailto:sage [2009/09/11(金) 21:36:34 ] 理解した。申し訳ありませんでした。
718 名前:デフォルトの名無しさん mailto:sage [2009/09/11(金) 22:52:50 ] なんで 自分のやり方でうまくいってないから質問したのに しかも正しい回答されてるのに逆切れするとか 理解の範疇を超えてる。