1read 100read
ふらっとVisual C#,C♯,C#(初心者用) Part107 (667) TOP カテ一覧 スレ一覧 2ch元 削除依頼
画像処理 その14 (120)
【普通のやつらの】 Arc Language 0 【上を行け】 (260)
【上流社会】MSDNサブスクリプション総合【最先端】 (652)
音声合成プログラムを作りる (326)
OpenGLスレ Part20 (122)
VBで作られた有名なアプリって何? (168)

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


1 :2013/09/25 〜 最終レス :2013/10/26
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問。
質問者自身なんだか意味がよく分からない質問。
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められることがあります、ご了承下さい。
なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっとVisual C#,C♯,C#(初心者用) Part106
http://toro.2ch.net/test/read.cgi/tech/1378514566/
■関連スレ
C#, C♯, C#相談室 Part80
http://toro.2ch.net/test/read.cgi/tech/1373037260/
■コード貼るなら↓使ってください
http://ideone.com/

2 :
なんかideone使いにくくなってね?
てか、run code無効にできなくね?

3 :
だってcodepad.orgはC#使えないんだもん

4 :
前もbootstrap使ってたっけ
今は使ってるって一目で分かるな

5 :
前はチェックボックスむき出しだったから使ってないんじゃない。
量産型オサレになりましたね。

6 :
コンパイルエラーが出るようになってむしろどこがおかしいのかまで分かるようになったから
ある意味コンパイラを持ってない人には親切かも
ついでに5桁のIDが6桁に増やされたな

7 :
ループでファイル名列挙するプログラム書いてみた。
若干冗長だけど、出力結果は正しいと思う。
ttp://ideone.com/Rzici0

8 :
SingletonのクラスをアプリのSettingデータとしてもってますが、
これを、設定画面でBindingしたいのですか、DataContextに普通にいれても無理でした。
どうやればいいでしょうか?

9 :
>>8
インスタンスを普通にDataContextに入れたら動くので、どこか他が間違っていると思うよ
デザパタで言うシングルトンじゃなくてstatic classをシングルトンと言っているなら.net4.5から対応しました
http://msdn.microsoft.com/ja-jp/library/vstudio/ms171868.aspx
>静的プロパティへのデータ バインド、ICustomTypeProvider インターフェイスを実装するカスタム型へのデータ バインド、およびバインド式からのデータ バインド情報の取得。
あ、勿論プロバティーがstaticでも動きません

10 :
みなさん質問ですがWPFのデータ接続ってなにつかってますか?データセット?エンティティ?それともLINQ? 必死こいてエンティティでのバインド覚えようと思ってるけどどうもうまくいかなくて

11 :
>>7
EnumerateFiles使うなっていってんだろ
980 名前:デフォルトの名無しさん[sage] 投稿日:2013/09/25(水) 12:24:09.75
>Directory.EnumerateFiles
これ中、再帰だろ、ボケ。
995 名前:デフォルトの名無しさん[] 投稿日:2013/09/25(水) 12:49:14.90
>>992
EnumerateFiles で見つかるのは名前だけだろ
そんな単純なもの以外に対応させるためには使えない
EnumerateFiles 使わずに書いてみてよ
FindFirstFile使え
http://ideone.com/opyS8O

12 :
前スレの糞みたいな流れを持ち込むんじゃねーよこの糞が
R

13 :
糞スレに誘導したのに、勝手にスレ立てんな、糞ども。

14 :
C#入門のサイトを見ながら作ってみたした
C#はまったくの初心者です
これはどこがだめなのでしょうか?
また、どうすればなおりますでしょうか?
背景に画像をうつして、消すとき確認をとりたいです
http://i.imgur.com/Riy4SAB.png

15 :
同じクラスあり過ぎてコンパイラが怒ってる
public Form1()
{
Bitmap ...
...
...
this.FormClosing += ... ←上のにまとめてここをコピー
 new FormClos...
}
上のForm1の
}から
下の
class Form1 : Form()までの行を消しちゃえ

16 :
書き直すわ
Form1とpublic Form1()が2つずつあるよな? これがいけない
public Form1()の閉じ括弧 } ←これ から
public Form1()の始まり括弧 { までを選択してバックスペースキー使って消したらいけるはず

17 :
エラーはひとつもでなくなりました
ありがとうございます
しかし、実行しても背景も表示されず閉じようとしても確認をとってくれません
何か間違ってたでしょうか?
http://i.imgur.com/sCZkz6C.png

18 :
ClosingイベントやLoadイベントのハンドラーが登録されていない

19 :
色んな所で検索してイベントのハンドラーを調べてみて
色々実行してみたんですが
いまいち解決法が見つかりませんでした・・・
よろしければ、具体的な方法を教えていただけますか?

20 :
根本的にForm1じゃなくてFormのインスタンスnewしてるじゃないか
そりゃそうだよ

21 :
>>18
適当なこと言ってんじゃねーぞコラ?

>>19
Mainメソッドの
>Form form = new Form();

Form1 form = new Form1();
に修正してみそ

22 :
オブジェクトがnullだった時のメソッド呼び出しをエラーにしない方法ないですか
oppai.Momu();
この呼び出しがoppaiがnullの時でも例外を発生せずに単に無視して欲しい。

23 :
エラーにしない方法はないです

24 :
>>19
これでいいのか
http://ideone.com/NTzvdo

25 :
>>22
oppaiを何かのクラスでラップしてnullを返さないようにするとか
class Hoge
{
 public Oppai Oppai
 {
  get
  {
   if( oppai == null )
   {
    oppain = new Ginyu();
   }
   return oppai;
  }
 }
}
class Ginyu : Oppai
{...}

26 :
>>22
null objectパターン

27 :
>>25
if(Oppai != null)
{
}
で囲む以上のコードを書いたら意味ないだろ

28 :
>>9さんありがとう、Bindingうまくいくようになりました。
原因は、TextBoxに値を表示してたのですが、
Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged
の追加で理想なうごきになりました。

29 :
>>22-25
それでは駄目です
oppai.GetChikubi().Nameru().MomuMomu();
みたいに関数呼び出しがチェーンします、そのうちの一部がnullでもエラーにならないようにしたいのです
一行で。

30 :
お帰りはあちら

31 :
間違った人は間違った方向に努力する典型と言わざるを得ない

32 :
駄目なのはお前だと

33 :
Objective-Cでもやれば

34 :
System::Windows::Forms::Show(NULL,L"C++/CLIも忘れんな",L"Win32APITest",MB_OK);

35 :
>>29
public static class Ext {
&nbsp; &nbsp; public static TOutput Do<TInput, TOutput>(this TInput obj, Func<TOutput> method) {
&nbsp; &nbsp; &nbsp; &nbsp;return obj == null ? default(TOutput) : method();
&nbsp; &nbsp; }
}
oppai.Do(GetChikubi).Do(Nameru).Do(Momu);
ぐらいで我慢しとけ

36 :
これは難しい暗号だ。

37 :
中途半端に代替案提示してやろうとするから食い下がるんだよ
有無を言わさず打ち砕け

38 :
>オブジェクトがnullだった時のメソッド呼び出しをエラーにしない方法 ← ここが間違いの根本
コンポジションしたメソッドチェーン対応クラスでも書くのが正解

39 :
色々問題があったけどまあいいや

40 :
言語機能に付いてないんだから諦めろとしか
どうしても自分でやりたいなら
リフレクションで全てモックオブジェクト返すようなNullableでも作ればいい

41 :
Roslynでも使えばいいんじゃない?
nullチェックの数千倍敷居が高いけど

42 :
オブジェクト指向の関数の呼び出しはthisポインターの省略に過ぎないわけで
関数には言ったら
 if (this == null){
  return;
 }
と書ければ一発で解決することがなぜできない

43 :
ようするにnullの時には、何もしない、という処理をしたいわけだ。
だから、>26が書いてるようにNullオブジェクトパターンで、
そもそものnullを、何もしない処理を実装したNullオブジェクトに置き換えればいいだけ。
Strem.Nullフィールドもそのパターンだな。

44 :
>>22
無理じゃねーの?
.NETがメソッドテーブルか型情報持ってるかは知らんけど、
抽象メソッドinvokeすんのに何かしらのポインタもってないとダメだろ
そんなこんなでnull大丈夫なんて前提作れないだろ

45 :
インスタンスないから関数にも入れないじゃん

46 :
解説すると。
Stream stream = null;
だと、
stream.ReadByte();
で例外になる訳だ。
これをNullオブジェクトパターンにすると、
Stream stream = Stream.Null;
stream.ReadByte();
値は読めないが、例外で落ちることは無い。

47 :
そんなこと誰でも知ってるが、それは何もしないオブジェクトをNull Objectと
呼んでいるだけのこと。
連想ゲームじゃねえんだから、名前にnullが付いてるからってnullと関係ないから。
試したわけじゃないけど、使うメソッド全てをあえて拡張メソッドで実装すれば
質問者の希望するような動作が可能かも知れないが、たとえ可能でもそんなアホなことするなと。
間違った方向に労力を投入するのはただの馬鹿

48 :
>>45
C++は変態言語の名に相応しく、呼び出せるんだよなーこれが
もちろんthisにアクセスしたらアクセス違反だが

49 :
ScalaのOptionがほしいんだろ?
型情報読み取って、その場で動的に作ればいい
どう見ても実用的じゃないが

50 :
>>48
そんな事してまで呼び出してどうするんだと
どうせvirtualじゃ無い物限定だろ

51 :
>>48
まったくこまった変態さんですね

52 :
>>48
変態もクソもチェックしてないだけだぜ
ILならnullのインスタンスメソッドは呼べるし呼べるのが自然だが、
わざとチェック入れて例外を発生させてる

53 :
>>47
別に名前なんてどうでもいいよ。
この質問者の目的をシンプルに解決する方法として、
Nullオブジェクトパターンと呼ばれている方法がいいんじゃないか、
というだけ。

54 :
シンプルに解決できないだろ。
>>47が言うように実装全部を変更する羽目になる。

55 :
>>21
おおおお!
原因はいまいち分かりませんができました!
ありがとうございます!
頑張ってソフトウェア完成させます!

56 :
>>53
くだらない事でクラス数を増やしたくないのでNullオブジェクトパターンは無理です
ただ単にnullのオブジェクトの関数を呼び出して何もしたくないだけなんですがね
はぁ、何故こんな簡単なことが書けないんだC#は

57 :
C#たんはダメな子なんです
我慢してください

58 :
F#でも使えばいいんじゃねーの?
できるかしらんけど

59 :
正常系でnullを返す自分の設計が糞なんだ

60 :
そういえばそうだな。
null返さなければいいだけだ。

61 :
nullなのにメソッド呼びたいとか考えたことなかった

62 :
まずこの議論がくだらない

63 :
疑問は(絶望的な方向に)解決したし、これ以上愚痴りたいなら穴掘ってどうぞ。
ここでやらないでね。

64 :
>>56
だから、書くだけなら拡張メソッドでいけるよ。

65 :
ところで、NULLはオブジェクトなのか?

66 :
var o = oppai;
if(obj != null) o = o.GetSize(ref size);
if(obj != null) o = o.Lick();
if(obj != null) o = o.UseCandle(true);
if(obj != null) o = o.AttackBySperma();
if(obj != null) o = GoToHeaven();

67 :
var o = oppai;
if(o != null) o = o.GetSize(ref size);
if(o != null) o = o.Lick();
if(o != null) o = o.UseCandle(true);
if(o != null) o = o.AttackBySperma();
if(o != null) o = GoToHeaven();

68 :
wpfのListBoxで、画面に見えていないアイテムを表示させようとしているんだが
ItemContainerGenerator.ContainerFromIndexでListBoxIemを拾おうとしても、一度表示するまではnullが返ってくる
何とかなりませんか?

69 :
確か仮想化を切ればいいはず

70 :
>>69
ありがとう、おかげで何とかなりました
<ListBox VirtualizingStackPanel.IsVirtualizing="false" って書けばいいなんて判るかよ!

71 :
失礼します。
Win7 64bitで作成しているのですが複数のdllを使用する時、一つでもx86用しか無い場合は
全てx86で使用するのが無難でしょうか?

72 :
無難もなにも混在などできない

73 :
>>72
返事ありがとうございます。
AnyCPUもどちらが動くかわからないから止めた方が良いと以前このスレで見かけましたので
ターゲットプラットフォームをx86で作るしか無さそうですね。

74 :
nullをオブジェクトで扱うべきという議論は他でもあって、
関数型言語などではSOME/NONE型として扱ってる
C#の場合は拡張メソッドでどうよ?
FooクラスにHelloIfNotNullを書けない所にまだ良心が残ってるといえよう
class Foo {
public void Hello() { Console.WriteLine("Hello Wolrd !"); }
}
static class FooExtentions {
public static void HelloIfNotNull(this Foo o) { if (o != null) o.Hello(); }
}

75 :
http://www.buzzword.jp/img/face10.png

76 :
Mac版Xamarin Studioが超絶バージョンアップ!C言語やD言語、F言語にも対応!Visual Studio不要に
http://engawa.2ch.net/test/read.cgi/poverty/1380351550/

77 :
コピペマン参上!まで読んだ。

78 :
C#はさ永遠とToString().ToString().ToString()....ってできるところがいいよね

79 :
そんなに釣り要素満載だと胃もたれしてしまうよ

80 :
動的に作成したコントロールに引数を追加する方法を探しています。
int i = 0;
while(true)
{
panel[i] = new Panel();
label[i] = new Label();
panel[i].Controls.Add(label[i]);
panel[i] += new EventHandler(panel_Click);
label[i] += new EventHandler(panel_Click);
this.Controls.Add(label[i]);
this.Controls.Add(panel[i]);
i++;
}
panel_Clickにiを渡したいのですが、方法がわかりません。
どうすれば出来ますか?

81 :
> panel_Clickにiを渡したい
そんなことは出来ないので、iをTagに入れるか、
またはFormのコードなどでコントロールをキーにするDictionaryを持つようにする

82 :
ソフトウェア板で答えたと思ったらマルチされてたでござるの巻

83 :
>>80
マルチR

84 :
c#6.0ってどうなってますか?

85 :
どうでしょうなあ・・・

86 :
マルチスレッドは簡単らしいです。

87 :
>>80
panel[i].Click += ( sender, e ) => MessageBox.Show( i.ToString() );
とか?w
動的にコントロール生成って、どうしても初心者の方がやりたくなってしまう魅力があるのかな

88 :
async/awaitより楽な非同期が思いつかない

89 :
>>87
そのiはいつ評価されるの?
初心者に魅力って、お前同じコントロール100個あってもデザイナで頑張って張りつけるの?
そっちの方が初心者くさいと思わん?

90 :
10個くらいなら普通に貼り付けてるな

91 :
同じコントロール100個も貼らなくていいようにUI設計する

92 :
同じコントロール100個貼り付けるってどんなプログラムだよ

93 :
グリッドみたいなものを作るときによくやるよね

94 :
テキストボックスだけで作るグリッド

95 :
VB6のコントロール配列は良かった

96 :
>>89
いいからサラのWindowsフォームアプリケーション作成して
コンストラクタに
public Form1()
{
 InitializeComponent();
 int i = 0;
 this.Click += ( s, e ) => MessageBox.Show( ( i++ ).ToString() );
}
って書いたらデバッグ実行してクリックしまくってみろ

97 :
>>96
ループ内に書かないと。
int i = 0;
while (i < 10)
{
 if (i == 5)
   this.Click += (s, e) => MessageBox.Show(i.ToString());
 i++;
}

98 :
推測されにくいIDってどうやって発行するのがいいでしょうか?
GUIDだと推測されやすいですか?

99 :
>>98
ランダムな文字列を使うべき

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
簡単なプログラム言語って何? (142)
【普通のやつらの】 Arc Language 0 【上を行け】 (260)
C言語なら俺に聞け(入門編)Part 121 (201)
VBで作られた有名なアプリって何? (168)
データ構造,アルゴリズム,デザインパターン総合スレ 2 (109)
【漏れは】猫でもわかる質問スレ【猫以下です】 (496)
--log9.info------------------
まさか自分の身に起こるとは思わなかった事26 (293)
もじょ村について半分本気で語るスレ (970)
喪女が落ち込んでることを書くとオカマが励ますスレ3 (795)
ブスなのは親がダサいのに子供産んだのが悪い (447)
アニメ好きな喪女集まれ〜 Part46 (600)
田舎暮らしの喪女 (638)
喪女特有の物事が上手く転がらない運の悪さ (437)
ネトウヨの行き過ぎた言動に疑問を感じる喪女14 (227)
野獣先輩のイキ過ぎた言動に疑問を感じる喪女 3人目 (157)
非常識な妊婦・子供連れが嫌いな喪女138 ※転載禁止 (189)
【デブ】とりあえず痩せよう69【喪女】 (235)
今どんなゲームしてるかいえや ( `Д´) 24 (726)
スレ立て依頼所@喪女板 part5 (470)
吹いた画像を貼るのだ 25枚目 (531)
FX為替BO・株取引やってる、興味ある喪女 4 (121)
ハーフ・クォーターの喪女 2ヵ国目 (1001)
--log55.com------------------
【PSP/VITA】DJMAX Portable 60曲目
【3DS】実況パワフルプロ野球ヒーローズ 6
【ヨクサル】サムライ&ドラゴンズ336【ガイア=エンド】
【PSVITA】ラグナロクオデッセイ総合 Part143
討鬼伝 極晒しスレ
【3DS】ガチャレーシング Gacha Racing【Lap1】
【PSP】風来のシレン4 plus 神の眼と悪魔のヘソ 21F
【3DS】プロ野球 ファミスタ クライマックス Part6