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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2009/09/21(月) 17:41:44 ]
このスレッドは
「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、
勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。

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

前スレ
ふらっとC#,C♯,C#(初心者用) Part44
pc12.2ch.net/test/read.cgi/tech/1251439041/

756 名前:739 mailto:sage [2009/10/13(火) 08:22:01 ]
>>750が言う通り少々の時間誤差あるくらいなら全然構わない
ちと説明不足だったすまない

757 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 08:40:35 ]
飛行機のネジには遊びがあるんだぜ
全てのネジを完璧に締めちゃうと飛び立った後で空中分解するんだぜ
仕事も同じ
俺は後輩にこう教えて来た

758 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 09:42:00 ]
今は接着剤だがなw

759 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 09:49:24 ]
それがツールというものか。

なんかつながった

760 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 10:01:43 ]
効率化を提言すると手を抜いてると言い出すのは日本の会社の宿命だよ
今まで自分が築いたものを否定されるに等しいと思ってるからね
帰属意識を持てという割に共同体だという概念がない

761 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 10:14:11 ]
んなこたない

762 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 10:58:17 ]
ツールツール言ってる奴はツールに問題があった時の
工数増加まで見積ってるんだろうな?

763 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 10:58:54 ]
当たり前

764 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 11:06:17 ]
というかツールってなんだよ、アドインとかか?ライブラリか?



765 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 11:35:45 ]
ツール・ド・フランス

766 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 12:16:49 ]
パスツール

767 名前:739 mailto:sage [2009/10/13(火) 12:25:48 ]
739だがいつの間にかかやの外にいてワロタ
で、結局>>739は実現可能なのだろうか?
ちょっと前にも書いたけど少しの誤差は無問題
似たような処理ならどんな方法でも基本おkだ
よろしくたのむ

768 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 12:56:09 ]
>>767
並列処理させればいいだけだろ
おまえにはポジトロニックブレインがついてないのか?

769 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 13:57:41 ]
カタブツとよく言われております

770 名前:739 mailto:sage [2009/10/13(火) 14:05:00 ]
ポジなんとかはよくわからんがその並行処理のやり方がわからないんだ
swfにキーを並行処理で渡すってのが俺の中で超難解

771 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 14:42:57 ]
多少の時間差があってもいいんなら、順番に処理すればいいだけ
人間の目には同時に見えるる

772 名前:739 mailto:sage [2009/10/13(火) 15:16:59 ]
何度も申し訳ない説明不足だった
swfを組み込むのが初めてでキーコントロールの渡し方もわからんトーシロなんだ
その辺も含めて教えてくれると助かる
ソースコードとか

773 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 15:27:25 ]
今はどうやって表示してるの?
ActiveXかなんか?

774 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 15:41:42 ]
>>739
ここで回答を待つよりも賢明な方法がある
ぐぐれ



775 名前:739 mailto:sage [2009/10/13(火) 15:57:14 ]
SHOCKWAVEなんたらって出るからたぶんActiveX

ぐぐりながら今もいろいろ試してるけど全然ダメなんだ…
なんせC#自体ほとんど触ったことないから(´・ω・`)

776 名前:デフォルトの名無しさん [2009/10/13(火) 16:13:10 ]
CopyFromScreenで取得した2枚の画像を
高速で比較して、異なる部分を抜き出す方法ってある?

777 名前:デフォルトの名無しさん [2009/10/13(火) 16:19:54 ]
知ってるなら教えてあげればいいのに。


778 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 16:23:32 ]
異なる部分とは?
単純に差分でなくて、林檎と蜜柑の違いとか?

779 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 16:24:15 ]
上で偉そうにしてた奴は、騒ぐだけ騒いで教えずに居なくなったな

780 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 16:26:42 ]
>>776
バイナリで比較すればいい

781 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 16:30:32 ]
>>775
C#というよりプログラミング自体初心者に近いんじゃないのか?
横着しないでまず文法を理解しなさい

782 名前:デフォルトの名無しさん [2009/10/13(火) 16:37:18 ]
>>775
単純な差分。
CombineRgnのRGN_DIFFみないな。

>>780
1ピクセルづつ比較したら遅くね?



783 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 16:46:35 ]
>>782
基本的にCPUで処理する場合は1ピクセルずつ処理するしかないぞ。
せいぜいSSEなどのパックド命令を使うことだけどこれはC++でやるべきこと。
Graphics/Bitmapで差による描画がないようなら自前でやるしかないな。
Marshal.Copyを使えばそれほど難しいことではないだろう。

784 名前:デフォルトの名無しさん [2009/10/13(火) 16:49:33 ]
>>783
Marshal.Copyの後、
forループで比較?
やっぱりこれしかない?
1280x1024 のbitmapの場合、0x500000の配列になるんだよね・・・




785 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 16:56:43 ]
ポインタ使えばええやろ

786 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 17:00:41 ]
9000枚くらい画像処理してるけど結構速いよ

787 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 17:05:18 ]
>>784
今更1Mピクセルくらいなによ、って感じ。

>>785
C#はアンマネージドなバッファに対するアクセス法が3種類ほどあるが、
ポインタとしてアクセスするのはunsafeキーワードでも足りず、
プログラムのビルドオプションを変更する必要がある。
そうするとほかのモジュールとのリンクも影響を受けかねないし、
よほどボトルネックになってない限りはお勧めできない。

>>786
同意。

788 名前:デフォルトの名無しさん [2009/10/13(火) 17:10:30 ]
>>786
>>787

そうか、そんなものか。
とりあえずやってみるよ。
サンキュ。

789 名前:786 mailto:sage [2009/10/13(火) 17:13:29 ]
類似画像比較の処理を書いていて、
最初はサンプリング部だけC++のモジュールに投げようと思ってたんだけど
試したら3%も早くならなかったので止めてC#で書いた

790 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 17:17:16 ]
あんま、参考にならないと思うけど、
一応、俺も類似画像検索ツール作ったことがある。
50x50サイズの画像を10000件検索したときは約5秒かかった。

791 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 17:19:13 ]
イメージほど遅くはなくなったんだけどな
イメージ先行してるよなw

792 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 17:25:49 ]
画期的なアルゴリズムを編み出したいんだろうけど
画像なんてのは規則性がないからな
異なる部分を抜き出すだけなら
1ピクセルごとに比較するのが単純で速い

類似画像検索となると、それなりの手法がいるがな

793 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 18:08:42 ]
>類似画像検索
たとえば、どんな風にやるの?

794 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 18:26:07 ]
大雑把な説明だと、各画像の特徴ベクトルを算出して比較

特徴ベクトルの中身や算出方法の具体的なアルゴリズムは説明しきれないから、
興味があるなら画像処理スレ行くとか、適当に論文を当たるとかしてくれ




795 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 18:30:36 ]
まあ、でも普通は2枚の画像の差分を目で評価できれば十分なので。
以前とあるマイナーな画像形式のコンバーターを作ったんだが、
可逆なはずの色域変換の逆変換でデータが化けてしまったときにお世話になった。

あ、そうだ。便乗質問するんだが、.NETの標準で対応してない画像形式のローダーを.NET向きに作るときって、
なにとして読めるように作ったらいいんだ?
汎用ローダーならIO.Streamでいいんだが……。

796 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 18:37:23 ]
WinForm向けならSystem.Drawing.Image(実体はBitmapだろうけど)
WPFも視野に入れるなら……DIB的なもの

797 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 18:38:56 ]
>>775
同時処理以前にキーの送信もできてなかったのか。
そっちを先に聞くべきだったね。
フラッシュ側でどうやってキー入力とってるかにもよるんじゃないのかな。

試しにSendInput使ったら送れたけど、これだと送る前にフォーカスセットしなくちゃならないけど
それでもいいかな?ちなみにキーボードフォーカスはPC上で1つしか持てないから
このやりかただと同時は不可能

798 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 19:25:21 ]
>>795
WIC(Windows Imaging Component)


799 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 20:14:39 ]
フォーカスの切り替えも一瞬だから
切り替えとキーイベントなりキーコード送信を順番にやればいいだけだよ

800 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 21:19:46 ]
C#に向いてるエディタってありますか?

801 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 21:20:28 ]
VisualC#2008以外ありえない

802 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 21:58:18 ]
誰もがお前らの思いどうりには行動しません。

協調とは性格や考え方の違うもの同士が譲り合って調和をはかること
すなわち同調ではない。
自分と他人は違う人間なんだから、
十人十色、いろんな考え、趣味、価値観があって当然。

よく私たちは「誤解された」といって憤慨することがありますが、
そのような人は自分の考えをはっきりと発言しているのでしょうか。 
自分の意見を明確に発言もしないで、誤解されたと憤慨するのは、
自分で一言も発言しないで「俺の考えていることを当てて見ろ」
と言っているのと同じことではありませんか。
お互いに自分の意見をもっとはっきり言うべきだと思います。 
自己主張をするときに最も注意すべき点は、感情的にならないことです。 
感情的になったら、勝ち負けを争っていることになります。 
主張するときは冷静で、しかも論理的に話すことが求められます。 
自分の常識が相手にも通じる時代は終わったのです。 
自分と相手の常識は違うのです。よく言えば価値観が多様化してしまったのです。


803 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:05:18 ]
コピペ君って馬鹿だな、まで読んだ。

804 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:06:05 ]
まず.NET Frameworkのクラスライブラリはインテリセンス環境で使うことが前提だから
やたら綴りが多くてとてもじゃないけどふつうのテキストエディタでは書いてられない。



805 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:10:47 ]
MonoDevelop

806 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:20:46 ]
それは秀丸+csc+NUnit+NAnt+NDocでグループウェア作った俺への挑戦だな。
っていうか、確かにシンどいです御免なさい勘弁してください。

ついでにサーバは秀丸+javac+JUnit+Antですた。御免なさい勘弁してください。

807 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:28:42 ]
C#のためにVisualC#が作られたというより,
VisualC#のために作られた言語だし

808 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:30:13 ]
ん?VisualC#の為じゃなく.NETの為に作られたのがC#だろ?

809 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:32:49 ]
実際VSとセットで設計されてるんだよ

810 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:42:44 ]
VisualJがクソミソにされたからブチぎれて大金かけてパクった言語ですが?

811 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:46:19 ]
はやくJava7出せよw

812 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:51:04 ]
Visual Jはこけてくれた良かった。
お陰でC#という最高の言語の一つが出来たのだから。

813 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 22:54:51 ]
Java7大したもの実装されなそうなのに何であんな時間かかってるんだろうな
正直言って見限り気味

814 名前:739 mailto:sage [2009/10/13(火) 23:08:53 ]
>>797
ありがとう参考になった。sendinputは使ってなかったわ

とりあえず今日も一日頑張ったけど無理だった。方法としては
・フォームをKeyPreview = trueに設定する⇒特殊アプリ(swfとか)には無効
・KeyDown += delegate(object o, KeyEventArgs e)の後に普通に
 ActiveControl = swf1;
 ActiveControl = swf2;と処理⇒片方しかキー処理しない
・上記のswf2をスレッド処理⇒片方しかキー処理しない

そもそもキーの渡し方がわからんかったからこんな変な処理になった
もうお手上げ\(^o^)/



815 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 23:44:21 ]
質問させてください。Excelに差込印刷をしてみたいので
C#が良いと後輩に教えてもらいました。

部下に指示するにしても、自分でまずやったほうがい良いと思い書き込みしてます。

どうやればいいでしょうか?

816 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 23:53:16 ]
>>815
騙されてるよ。
C#はCOMと相性が悪い。
普通にVBAでいい。

817 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 23:56:32 ]
>>815
お前は部下持ちなのに、自分の頭で考える能力も経験もないのか?

818 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 23:57:49 ]
>>816
なるほど。VBAを購入してマスターすればいいのですね。
大変参考になりました。60点です。

819 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 00:01:49 ]
>>818
おまえは0点だよw


820 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 00:08:14 ]
>>798
ふぅ〜む……。
Vistaでは標準で入ってるけどXPでは.NET Framework 3.5に同梱かぁ。
COMベースであるところが気に入らないが、HD Photoも対応してるようだし
サードパーティーが拡張できるようにすること前提になってるようだし、興味深いな。

WIC、使ったことある人があれば感想とか聞いてみたいね。

試して見る価値はあるような気がする。ありがとう。
ただ自分の使いたい用途とは必ずしも一致しない。
System.IO.Stream系で1行あたりのバイト数で区切られた
長方形状のメモリに直接読み書きできるようなクラスがあれば
それの形で実装できればなと思ってる。

821 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 00:08:50 ]
>>818
VBAを購入するのか
大変だなw

822 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 03:10:31 ]
あまりに初歩的で申し訳ないのですが

たとえばApplication.cs から Option.cs を開くために
Application.cs[Design] で Option 項目を作成し
クリックされた時のイベントに何を書けば
Option のウィンドウを開くことができるのでしょうか?

823 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 04:29:07 ]
アプリケーションの作成手順が知りたいんだけど

例えば、URLを右クリックして保存する時に出てくるウィンドウを設計する場合

まず、フォームにコンポーネントを追加していって
作業に必要なデータセットをつくって
次はイベント処理を作っていくのが一般的?

824 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 06:31:22 ]
そんなんでデータセットなんて使わんだろ。



825 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 08:41:16 ]
>>822
Application.csからOption.csを開くって何?
C#ではソースコード同士を開いたりという概念は無いよ。
(コンパイルしたら実行時には関係なくなるから)

それから、その2つはFormを定義してるのかな?
それなら、そんなクラス名をつけるのはあまり一般的ではないよ。
Formクラスを継承するんだらMainFormとかそういう名前をつけるといい。

ちょっと基本的なレベルで突っ込みどころが多すぎるので、
まずは教科書どおりに書いてその意味を考えてもらえないだろうか。

826 名前:815 mailto:sage [2009/10/14(水) 10:03:19 ]
今日、部下に相談したら「私がやりますから」って不機嫌そうな顔をしてたので
彼は左遷だと社長に直訴しました。私をだれだと思ってるんだまったく。

827 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 10:07:28 ]
>>826
お前論外。カエレ

828 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 10:08:21 ]
まさかとは思いますが、この部下とは、あなたの想像上の存在にすぎないのではないでしょうか。

829 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 10:20:46 ]
たぶん自分が上司という設定も想像上

830 名前:デフォルトの名無しさん [2009/10/14(水) 11:35:19 ]
みんな何と戦ってるんだ……

831 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 12:13:59 ]
>>826
おまえみたいな仕事の出来ないSEが多くてかなわん

832 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 12:48:05 ]
そうだ、その席俺によこせ

833 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 14:26:51 ]
>>825
レスありがとうございます。
共にFormクラスを継承していますので名前を変更しました。

まず、MainFormを作って次にOptionFormを作った場合
実行するとMainFormのみ表示されます。

実行時にOptionFormを表示するにはどのようにすれば良いのでしょうか?

834 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 14:30:57 ]
OptionFormをいつ表示させたいの?
MainFormの代わりならnew MainForm() してるとこを探してみそ。

任意の時点なら、new OptionForm()して.ShowDialog()とか



835 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 14:31:42 ]
ソースコード全部漁るとMainメソッドでApplication.Runを実行している所がある
そこで引数として渡すFormを変更する

836 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 15:26:29 ]
>>834
できました。ありがとうございます。

837 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 20:32:33 ]
abstract class Foo}

838 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 20:47:28 ]
コンパイルエラーになりますた


839 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 20:52:25 ]
public abstract class Foo{}
public class Bar:Foo{}
public class Baz:Foo{}

public class BarContainer{
public List<Bar> Children;
}

public class BazContainer{
public List<Baz> Children;
}

というクラスがあって、BarContainer と BazContainer の両方を扱えるように、

interface IParent<T> where T:Foo
{
List<Foo> Children;
}

public class BarContainer:IParent<Bar>{
public List<Bar> Children;
}

というのを定義したんですが、
var x=(IParent<Foo>)(new BarContainer());
とはできないんですね。

なんかいい方法ない?


840 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 20:55:03 ]
public abstract class FooContainer {

841 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 21:01:02 ]
>>839
msdn.microsoft.com/ja-jp/library/ms228359.aspx
その問題についてはこの記事が詳しい
MSDNの中でも指折りの良質な記事だと思う

842 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 21:21:22 ]
単純に
public abstract class Foo { }
public class Bar : Foo { }
public class Baz : Foo { }
interface IParent<T> where T : Foo {
List<T> Children { get; set; }
}
public class MyContainer<T> : IParent<T> where T : Foo {
List<T> lis;
public List<T> Children {
get { return lis; }
set { lis = value; }
}
}
class Program {
static void Main(string[] args) {
var x = (IParent<Foo>)(new MyContainer<Bar>());
var y = (IParent<Foo>)(new MyContainer<Baz>());
}
}
という話ではないのか?と思ったんだが、違うのか。

843 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 21:25:35 ]
一見正しそうに見えるけどコンパイル通らないよそれ
理由は>>843を嫁

844 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 21:27:37 ]
こんにちは

質問があります。
今座席表を簡単なものを作っています。

ラベルで席の場所を作り、その中に名前を入れておくのですが
このときの名前はForm2にメンバー表をテキストボックスで作っておき
それに対応したラベルをForm1で参照して表示にしようと思っています。

そして、Form2のテキストボックスの名前を変えて保存ボタンを
押せば簡単に席替えしたときに変えられる
と言うな物を作りたいのですが。

@Form1からForm2のテキストボックスが参照できない
Aexeで起動したときテキストボックスの中身を入力で替えたとき
保存は出来るのか?

以上を教えてください。なお、あまりよくない作りになりそうでしたら
そこも助言いただけるとうれしいです



845 名前:839 mailto:sage [2009/10/14(水) 21:32:23 ]
みなさまレスありがとう。
>>840
ごめん、サンプルでは簡略化のために省きましたが、
Bar/BazContainer には基底クラスがあるので、その手は使えないっす。

>>841
ビンゴなレスありがとう。お礼にフェラチオしてやりたいくらいだ。
でも、記事内容がちょっと俺には高度っぽい。
理解できるだろうか。

>>842
>System.InvalidCastException はハンドルされませんでした。
>Message="型 'ConsoleApplication1.MyContainer`1[ConsoleApplication1.Bar]' のオブジェクトを型 'ConsoleApplication1.IParent`1[ConsoleApplication1.Foo]' にキャストできません。"


846 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 21:33:25 ]
>>844
フォーム等の特定の入出力に依存しない座席表クラスを作って,
そのインスタンスを両方のフォームから参照する。
保存や読み込みもそのインスタンスだけ。

847 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 21:38:38 ]
>>839
よく見てないけど、
C#4.0でサポートされるジェネリックの共変・反変性と関係するのかな?
ちと調べてみる。

848 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 21:40:23 ]
関係は大いにあるけどC#4.0では解決しない
List<T>は書き込みと読み取りの両方の操作をサポートしているので共変も反変も使えない

849 名前:842 mailto:sage [2009/10/14(水) 21:48:14 ]
なるほど、だから >841 なのか。納得しました。

850 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 21:53:51 ]
>>846
なるほどテキストボックスとかで貼り付けたのを使うのでなく
あくまでもプログラムで参照させるやり方ですね?

初心者で申し訳ないですが

座席表クラスには座席番号と氏名を入れて
それを対応したラベルなりに表示させるようにして
変更時は
Form2に保存ボタンを作り名前が入ってるテキストボックスに入力させて
ボタン押してプログラムに上書きをさせていく感じでしょうか?

一応座席が76個ほどあります・・・・
初心者ですいません。

851 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 22:30:41 ]
>>850
初心者スレで初心者ですみませんとか何度も言われると煽られているのかと思ってしまう。

それはさておき、>>846の言うことがよく理解できないなら
テキストボックスを参照させたいならテキストボックスのアクセシビリティを
デフォルトの private から internal とかに上げる方法もある。

852 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 22:41:45 ]
こないだわからないことがあったんで質問します


<asp:FormView ID="formView1" runat="server">
<ItemTemplate>
      ・・・・
<asp:Panel ID = panel1 runat="server">
・・・・

コードの概要は上記のような形で.cs側でpanle1のvisibleを制御したいんだけどやりかたがわかりませんでした。
調べたら恐らくできるんだろうことはわかったんですが・・・

試したことは

 Panel pnl = (Panel)formview1.findcontrol("panel1");
   これでpnlがnullになってしまいます

 Panel pnl = (Panel)formview1.row.findcontrol("panel1");
   rowに何もはいってません

なんか推測でも理由分かる人いたらおねがいします





853 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 22:42:55 ]
>>850
一個一個入力という意味?それでも問題ないけど。

一例として入力フォームはダイアログボックスとして席の位置に76個のテキストボックスを配置。
モーダル表示した時に846の座席表クラスの76個のString(配列とかリストとか)からそれぞれ貼り付け。
変更後にOKボタンで逆に座席表クラスに取り込む。Cancelなら内容は破棄。
なんてのはどう?

モーダルにしない場合、他の画面で更新かかったときに動的に書き換えたりと初心者の範疇を越えてしまう。

854 名前:850 mailto:sage [2009/10/14(水) 23:04:07 ]
>>851
ごめんなさいそういうつもりは一切ありません。
言わんとしてることは分かるのですが、どうも説明したり
口で言うのが苦手なのでうまくまとめられてないです。

internal明日会社で調べてみます!ありがとうございます。

>>853
ダイアログ使ったことないんでちょっと調べてみて
参考にしたいと思います!

しない場合は難易度アップなんですね・・・
明日会社で検討してみます!
ありがとうございます。

またクルかと思いますが申し訳ないですがそのときはよろしくお願いします。



855 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 23:19:30 ]
C#, C♯, C#相談室 Part54 で質問したんですが
スレが終了してしまったのでこちらで再質問させていただきます。
-------------------------------------------------
ArrayList.Add でリストの最後ではなく
リストの最初に追加するにはどうすれば良いですか?
-------------------------------------------------

995 名前:デフォルトの名無しさん[sage] 投稿日:2009/10/14(水) 20:20:40
関係ないけど今更ArrayListなんか使うな

1000 名前:デフォルトの名無しさん[sage] 投稿日:2009/10/14(水) 20:47:19
List<T>

というレスをもらいましたが、Listでも
リストの最初に要素を追加する方法はわかりませんでした。
回答いただけたら大変助かります。

856 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 23:25:16 ]
C#, C♯, C#相談室 Part55
pc12.2ch.net/test/read.cgi/tech/1255530225/

立てといた






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

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

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