ふらっと C#,C♯,C#(初心者用) Part112
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2014/07/07(月) 03:00:17.70ID:vDLd10h/他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっとVisual C#,C♯,C#(初心者用) Part111
http://peace.2ch.net/test/read.cgi/tech/1396703308/
■関連スレ
C#, C♯, C#相談室 Part83
http://peace.2ch.net/test/read.cgi/tech/1397948872/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
0002デフォルトの名無しさん
2014/07/08(火) 05:13:27.14ID:PHoFICaa0003デフォルトの名無しさん
2014/07/09(水) 01:23:10.71ID:uovn3Ve0簡単に影響を受けないようにする方法ってあります?
0004デフォルトの名無しさん
2014/07/09(水) 03:13:28.65ID:9XvDoF3c0005デフォルトの名無しさん
2014/07/09(水) 09:03:06.26ID:/8Zca8DMどのようにすればいいでしょうか?
0006デフォルトの名無しさん
2014/07/09(水) 09:17:07.72ID:dUInrtoGアルファチャネル付きの画像をなんか適当な形式で保存したいのか
前者はbmp形式にアルファの定義がないから基本無理
後者なら何が分からないのか分からん
0007デフォルトの名無しさん
2014/07/09(水) 09:34:19.10ID:/8Zca8DM失礼しました。
0008デフォルトの名無しさん
2014/07/09(水) 09:52:59.55ID:ysQEDzEU0009デフォルトの名無しさん
2014/07/09(水) 10:41:31.32ID:QQm9iNtyBitmap bmp = new Bitmap( 32, 32 );
using( var g = Graphics.FromImage( bmp ) )
{
g.FillRectangle( Brushes.Red, new Rectangle( 0, 0, 16, 16 ) );
}
bmp.Save( @"C:\Users\ホゲ\Desktop\test.bmp", ImageFormat.Bmp );
これで一応32bitBMPとして保存されたっぽい
ただしエクスプローラのプレビューやペイントだと透明部分が黒に見えるが
GIMPだとアルファチャネルが存在してる
0010デフォルトの名無しさん
2014/07/09(水) 10:50:41.27ID:QQm9iNtyBitmap bmp = new Bitmap( 32, 32 );
using( var g = Graphics.FromImage( bmp ) )
{
using( var sb = new SolidBrush( Color.FromArgb( 128, Color.Red ) ) )
{
g.FillRectangle( sb, new Rectangle( 0, 0, 16, 16 ) );
}
}
bmp.Save( @"C:\Users\ハゲ\Desktop\test.bmp", ImageFormat.Bmp );
0011デフォルトの名無しさん
2014/07/09(水) 10:55:10.08ID:dUInrtoGGDI+(System.Drawing.Bitmap)でもWIC(System.Windows.Media.Imaging.BmpBitmapDecoder)でも
ロード時にアルファは無視される
new Bitmap("test.bmp")してPixelFormat確認すると32bppRgb(!32bppArgb)になる
0012デフォルトの名無しさん
2014/07/09(水) 11:20:34.21ID:QQm9iNty>>5の使い道はなんなんだろ
pngではだめなんだろうか
0013デフォルトの名無しさん
2014/07/09(水) 11:29:59.93ID:/8Zca8DM0014デフォルトの名無しさん
2014/07/09(水) 12:16:10.06ID:6Q5lDVVyあとは表示させるソフト次第
0015デフォルトの名無しさん
2014/07/09(水) 12:37:42.56ID:ysQEDzEUhttp://www.ipentec.com/document/document.aspx?page=csharp-32bit-argb-bitmap-load
pngでもいいかもって言ってるってことはそもそもの目的が
アルファチャネル付きのBMPではない?
0016デフォルトの名無しさん
2014/07/09(水) 15:05:29.33ID:/8Zca8DM0017デフォルトの名無しさん
2014/07/09(水) 15:15:27.65ID:6Q5lDVVy0018デフォルトの名無しさん
2014/07/09(水) 20:29:21.22ID:sGyAOB2p0019デフォルトの名無しさん
2014/07/09(水) 22:50:53.10ID:gcrBKwnE┗class B
class C
とあってclass A内で
var data = new class B();
としてclass Bのインスタンスを作り、
class C内で
var data = new classC();
として自身のインスタンス生成したとして、class Cのdataに
class Bのインスタンスをどうにかして入れる事はできますか?
0020デフォルトの名無しさん
2014/07/09(水) 22:53:38.34ID:fe1OzD4f0021デフォルトの名無しさん
2014/07/09(水) 23:12:03.71ID:gcrBKwnE主にclass Cのインナークラスを保存したいので
var data = new classC();
↓
filestream(ファイル開く)
↓
BinaryFormatterでSerialize(filestream, data);
という風にしているのですが、他クラスのインナークラスのいくつかも
保存したいんですが、何かいい方法はありますか?
0022デフォルトの名無しさん
2014/07/09(水) 23:30:21.37ID:wWXEN3tU0023デフォルトの名無しさん
2014/07/10(木) 00:23:33.81ID:9Pt+y14M0024デフォルトの名無しさん
2014/07/10(木) 00:36:31.66ID:fPVmWtXg0025デフォルトの名無しさん
2014/07/10(木) 00:55:15.57ID:cLGdXR9n0026デフォルトの名無しさん
2014/07/10(木) 03:35:57.19ID:b3bChvC0var〜
0027デフォルトの名無しさん
2014/07/10(木) 04:53:32.87ID:4Q/eQNS10028デフォルトの名無しさん
2014/07/10(木) 06:36:28.62ID:RC8foVCrclassD { classC c; classB b; }
をシリアライズすればいいとかそんなん?
0029デフォルトの名無しさん
2014/07/10(木) 11:48:10.69ID:pH5M7v7R0030デフォルトの名無しさん
2014/07/10(木) 11:57:38.46ID:Y03yL7vi0031デフォルトの名無しさん
2014/07/13(日) 01:48:23.12ID:f9bs6J9Oprivate System.Windows.Forms.BindingSource bindList= new System.Windows.Forms.BindingSource();
dataGridView.DataSource = list;
bindList.DataSource = list;
button_click(){
list.RemoveAt(i);
}
このようなコードを書いたのですが、
リストを消した後にgridViewを移動すると、
インデックスエラーが発生します。
BindingSourceに対して変更を行うのは容易ですが、
list自体を変更するとgridviewも更新されるようにしたいです。
どうようなことをすればいいのでしょう?
0032デフォルトの名無しさん
2014/07/13(日) 01:56:11.63ID:8folUtN/消した後にもう一回
dataGridView.DataSource = list;
でバインド
0033デフォルトの名無しさん
2014/07/13(日) 02:24:33.55ID:f9bs6J9Oその操作を勝手にしてくれるようなプロパティとかはないのでしょうか?
0034デフォルトの名無しさん
2014/07/13(日) 02:43:42.39ID:8folUtN/わしは知らんなあ
見た目に拘るならデータソースじゃなくて
DataGridViewの物理行を削除しなされ
0035デフォルトの名無しさん
2014/07/13(日) 04:29:59.05ID:f9bs6J9OBindingSourceに操作を行えば自動更新できるので、
それを暫定的な対応として、ベストプラクティスを探してみたいと思います。
0036デフォルトの名無しさん
2014/07/13(日) 07:21:45.16ID:NeP+9it7listが変更をBindingSourceに伝えられなけりゃ実現できるわけがないが
具体的にはIBindingListとかそういうのが必要
0037デフォルトの名無しさん
2014/07/13(日) 11:13:54.11ID:f9bs6J9OListを継承して、IBindingListを実装すれば実現できるのですかね?
長期的に役に立ちそうなのは作っていきたいと思いますが
0038デフォルトの名無しさん
2014/07/13(日) 12:32:36.84ID:NeP+9it7(もちろんリストへの追加削除はBindingListに対して行う)
その場合はこういう関係になるな
DataGridView<-BindingSource<-BindingList<-List
ListをIList<T>として扱ってればさりげなくBindingListに実体置き換えても影響が出ない
0039デフォルトの名無しさん
2014/07/13(日) 18:38:32.58ID:f9bs6J9OBindingListについて研究したいと思います!
0040デフォルトの名無しさん
2014/07/14(月) 00:06:41.50ID:Xwe8tCu/sqlを実行する方法はありますか?
0041デフォルトの名無しさん
2014/07/14(月) 06:04:06.89ID:x82lWHK8ていうのはともかく、LINQ to Objectsで妥協できんか
0042デフォルトの名無しさん
2014/07/14(月) 15:24:12.63ID:DvBldTQUしまうようなのですが、防止する方法ありますか?
0043デフォルトの名無しさん
2014/07/14(月) 15:30:26.16ID:Q4WHJ1SOXMLの改行コードは\nなので仕様です。
0044デフォルトの名無しさん
2014/07/14(月) 15:45:26.79ID:DvBldTQUゲゲ、本当ですか。
困った困ったこまどり姉妹
0045デフォルトの名無しさん
2014/07/14(月) 21:28:47.72ID:Xwe8tCu/LINQ to Objects?
なんぞこれ、素晴らしすぎんだろぉぉぉぉ!
プロパティも日本語で命名して、一発で完成ですわ。
0046デフォルトの名無しさん
2014/07/15(火) 00:20:05.16ID:9hne90ms試してないけど、これじゃいかんのか?
http://www1.atwiki.jp/www1/pages/65.html
もしくは、エンティティ使う
http://stackoverflow.com/questions/2265966/xml-carriage-return-encoding
0047デフォルトの名無しさん
2014/07/15(火) 04:58:28.65ID:2C1Abc6Lおお、良い情報ありがとうございました。試してみます。
もう一つ質問なんですが、
FormにTextBoxを隣接して三つ横に並べて
[ ][ ][ ]
Formの幅を広げた時に、三つのTextBoxも、隣接状態を保ったまま
[ ][ ][ ]
それに比例して伸びるようにしたいのですが、アンカー設定だけでできますか?
それとも何か別の方法が必要ですか?
0048デフォルトの名無しさん
2014/07/15(火) 12:34:48.10ID:m0dHXqeoTableLayoutPanelを使う。
0049デフォルトの名無しさん
2014/07/15(火) 13:25:36.26ID:2C1Abc6L情報ありがとうございます。
さっそくTableLayoutPanel試してみたのですが、どうやっても左端のTextBoxだけが
拡大縮小して他のTextBoxは幅が変わりません。何か設定のコツありますか?
0050デフォルトの名無しさん
2014/07/15(火) 13:39:37.62ID:j3zFGvRvちょっと触ってみたけど、列と行の設定でパーセント指定したらいいんじゃないかな?
0051デフォルトの名無しさん
2014/07/15(火) 13:40:53.54ID:NqAQeGoH0052デフォルトの名無しさん
2014/07/15(火) 14:36:21.23ID:2C1Abc6Lありがとうございます。
そんなプロパティがあるのは知らなかったです。
できました。
0053デフォルトの名無しさん
2014/07/15(火) 14:38:29.82ID:lIGhna3cどっかにAutoSizeとかのプロパティでもあるん?
0054デフォルトの名無しさん
2014/07/15(火) 16:13:06.15ID:NqAQeGoH> パーセント指定しても勝手に変わる
何がどう変わるの?
> どっかにAutoSizeとかのプロパティでも
どういう動作からどういう動作になることを期待してるの?
0055デフォルトの名無しさん
2014/07/15(火) 18:48:08.83ID:1WDzCzu7{
void SampleMethod();
}
public class Name : ISampleInterface {
void ISampleInterface.SampleMethod()
{
// メソッド
}
ISampleInterface obj = new Name();
obj.SampleMethod(); ←なんでここでエラー出るんですか?
0056デフォルトの名無しさん
2014/07/15(火) 18:52:42.44ID:NqAQeGoH0057デフォルトの名無しさん
2014/07/15(火) 21:30:25.35ID:zqJ3eiiK0058デフォルトの名無しさん
2014/07/15(火) 21:48:39.37ID:ieC5KU930059デフォルトの名無しさん
2014/07/15(火) 22:04:23.55ID:1WDzCzu7そうなんですか?
よく理解できていない・・・
0060デフォルトの名無しさん
2014/07/15(火) 22:46:39.28ID:Ngk0Hx9g0061デフォルトの名無しさん
2014/07/15(火) 23:06:26.64ID:PdngeYugISampleInterface obj = new Name();
はメンバー変数の定義だから大丈夫だけど、
obj.SampleMethod();
は行を入れ替えたら実行順序が変わってしまう。だから、クラスに直では書けない。
0062デフォルトの名無しさん
2014/07/15(火) 23:06:43.65ID:0r8KqbfZ明示的なインターフェイスの実装
0063デフォルトの名無しさん
2014/07/15(火) 23:18:49.46ID:1WDzCzu7ありがとうございます。
>クラス内にかけるものは全て、その単位ごとに並び替えても正しい設計になる。
>メソッドなら、メソッドのスコープが一つの単位ね。
ここがちょっとよく分からないですが、調べてみます
0064デフォルトの名無しさん
2014/07/15(火) 23:20:29.55ID:8gxfvMcm0065デフォルトの名無しさん
2014/07/16(水) 23:19:13.49ID:rm2vz3cR0066デフォルトの名無しさん
2014/07/16(水) 23:25:50.14ID:gY6XKdVm0067デフォルトの名無しさん
2014/07/17(木) 00:25:20.53ID:BzDRQrTd0068デフォルトの名無しさん
2014/07/17(木) 01:20:21.65ID:lSZpZqQ00069デフォルトの名無しさん
2014/07/17(木) 01:21:36.66ID:lxr4vzM00070デフォルトの名無しさん
2014/07/17(木) 02:45:34.42ID:2ovuHeulどうやって抽象化するのでしょうか?
0071デフォルトの名無しさん
2014/07/17(木) 03:10:54.91ID:lxr4vzM0abstract class Class1
{
public Class1()
{
// ・・・
}
}
class Class2 : Class1
{
public Class2() : base()
{
// ・・・
}
}
0072デフォルトの名無しさん
2014/07/17(木) 08:19:28.54ID:7o7dkerS0073デフォルトの名無しさん
2014/07/17(木) 13:15:41.03ID:s17utiS1どうやればいいのか教えてもらえませんか
アニメはxamlじゃなくてコードで書いています
0074デフォルトの名無しさん
2014/07/17(木) 13:18:28.86ID:9wZzgWXp具体的に教えろと言うなら今のコードをまず書いてね
0075デフォルトの名無しさん
2014/07/17(木) 13:28:34.26ID:s17utiS1こんな感じです。よろしくお願いします
DoubleAnimation CreateAnimation(Slider target,float newValue)
{
var anime = new DoubleAnimation()
{
Duration = TimeSpan.FromSeconds(0.5),
To = newValue
};
Storyboard.SetTarget(anime, target);
Storyboard.SetTargetProperty(anime, new PropertyPath(Slider.ValueProperty));
return anime;
}
本体
Storyboard sb = new Storyboard();
var ani32 = CreateAnimation(Slider32, item.Gain32);
sb.Children.Add(ani32);
sb.Completed += (s, ex) => Dispatcher.BeginInvoke(new Action(() =>
{
IsBusy = false;
}));
sb.Begin();
0076デフォルトの名無しさん
2014/07/17(木) 13:41:38.53ID:9wZzgWXpsb.Completedで、
Storyboard.Remove(target)とか
target.BeginAnimation(Slider.ValueProperty, null)とか
あと同時にアニメーション後の値をプロパティに設定する
参考:依存関係プロパティ値の優先順位
ttp://msdn.microsoft.com/ja-jp/library/ms743230.aspx
0077デフォルトの名無しさん
2014/07/17(木) 14:05:46.06ID:s17utiS1target.BeginAnimation(Slider.ValueProperty, null)でうまくいきました。
ありがとうございました
0078デフォルトの名無しさん
2014/07/17(木) 18:55:27.72ID:6G5bJay8System.Windows.Controls.TextBox
は何が違うんですか?
どうして同じようなものが二つあるんですか?
0079デフォルトの名無しさん
2014/07/17(木) 19:05:22.76ID:9wZzgWXp前者がWindows標準のウィンドウライブラリ使ったもの
後者はレガシーに引きずられてると自由度とか低いから全面的に新しく作ろうぜってことで作られたもの
0080デフォルトの名無しさん
2014/07/17(木) 20:21:24.02ID:6G5bJay8解説ありがとうございます。
0081デフォルトの名無しさん
2014/07/17(木) 22:18:00.17ID:6m/ARb1LFormのメッセージボックスを使ってて
しかもそれが表示されてるのにびびった
.NETすげえ。いやIEがすごいのか
0082デフォルトの名無しさん
2014/07/17(木) 22:23:24.73ID:3NPE8Kwe0083デフォルトの名無しさん
2014/07/17(木) 23:06:11.56ID:CmAi6+Pr今も残ってるのかどうかはしらんが
0084デフォルトの名無しさん
2014/07/18(金) 13:34:08.39ID:H4/dInHHちょっとサンプルコード晒してみてくれないか
0085デフォルトの名無しさん
2014/07/19(土) 06:47:16.20ID:AaS1tAmI実用的かどうかしらんが、こういうことができるようだ
[Hosting .NET Windows Forms Controls in IE]
ttp://www.codeguru.com/csharp/.net/net_general/internet/article.php/c19639/Hosting-NET-Windows-Forms-Controls-in-IE.htm
0086デフォルトの名無しさん
2014/07/19(土) 23:16:34.41ID:0o8EVBYOASP.NET関係なさそうだな
IE6の時代なら意味有ったのかもしれんけど、今時使うべきじゃなさそうね
0087デフォルトの名無しさん
2014/07/21(月) 20:04:32.57ID:ZTdtGxYSpublic class Data{
public int age
public int height
}
みたいなのを新たに
public class Data{
public int age
public int height
public int weight
}
こういうのってできませんかね?前やろうとしてXmlExceptionで挫折したんですが・・・
やっぱり自分でデータ読み書きするしかないんですかね?
0088デフォルトの名無しさん
2014/07/21(月) 20:14:48.61ID:PAbp4tWjint weight{get;set;}
[XmlElement("weight")]
string weightString{
get{ return weight.ToString(); }
set{
int i;
int.TryParse(value,out i);
weight=i;
}
}
試してないけどこんな感じなら行けるんじゃね?
0089デフォルトの名無しさん
2014/07/22(火) 13:52:06.49ID:g9QQ7Nsg0090デフォルトの名無しさん
2014/07/22(火) 14:16:23.05ID:K4xASBS3デシリアライズ時にxml内になかったら初期値がそのまま残るだけじゃなかったっけ?
0091デフォルトの名無しさん
2014/07/22(火) 15:51:33.39ID:7sSt+lwx比較的新しく、入門にお勧めな本があれば教えて下さい
お勧め本はググれば出てきますが新しいものがなかなか無いので
0092デフォルトの名無しさん
2014/07/22(火) 15:56:00.62ID:UdhhORTs0093デフォルトの名無しさん
2014/07/22(火) 16:17:08.24ID:n6USit9y何を勉強したいのかとか、現在のほかの言語の習得状況とかによるから、
とりあえず本屋で何冊か立ち読みして、自分に合ってそうなのを
買うといい。
0094デフォルトの名無しさん
2014/07/22(火) 16:29:19.46ID:c18b9aBU川俣大先生の記事で十分
0095デフォルトの名無しさん
2014/07/22(火) 19:25:00.71ID:7sSt+lwxなるほど、それは盲点でした
>>93
田舎なので遠出しないと専門書売っている本屋がないのです
>>94
最初いいかと思いましたが他の言語経験も少ない私には難しかったです
オライリーは翻訳が酷いようなので
独習C#買ってみようと思います
ありがとうございました
0096デフォルトの名無しさん
2014/07/23(水) 01:33:28.69ID:mkGkREWO和書しか読めないゴミなんて死ねばいいよ。てか、死ねよ
0097デフォルトの名無しさん
2014/07/23(水) 08:52:08.27ID:exug49Pi0098デフォルトの名無しさん
2014/07/23(水) 19:35:44.01ID:j3JmNZ+qとある、すでに完成しているアプリケーションのVisualC#プロジェクトがありまして、
それをベースに少しだけ中身を変更して、
もともとのアプリケーションと同じPCに別アプリとしてインストールしたいと思っています。
インストーラのプロジェクトのProductName、Titleを違う名前に変更してインストラーを作成しました。
いざインストールしようとすると「このプロダクトの新しいバージョンがすでにインストールされているためインストールできません。」
と表示されてしまい、インストールできません。
あとどのプロパティを変更すればインストール可能になるでしょうか。
0099デフォルトの名無しさん
2014/07/23(水) 19:54:52.89ID:UvLOZQCEセットアッププロジェクトのことだと思うけど、それなら
Dobonさんのところに詳しい解説があるから全部読んでちゃんと理解した方がいい。
生兵法はけがの元
0100デフォルトの名無しさん
2014/07/23(水) 22:41:54.81ID:38EuJqRN010198
2014/07/24(木) 09:35:43.27ID:YR5zi8hk>>100
ご意見ありがとうございます。
きっちり勉強したいのは山々ですが、
急に対応しなくてはいけなくなり、場当たり的に対応せざるを得ない状況です。
GUIDという単語を今回はじめて知りましたので、
少し調べてみます。
010298
2014/07/24(木) 11:59:18.46ID:YR5zi8hkslnファイルとcsprojファイル内のGUIDをすべて変更したらいけました。
ありがとうございました。
0103デフォルトの名無しさん
2014/07/24(木) 12:41:12.34ID:8hVBn3gl0104デフォルトの名無しさん
2014/07/26(土) 14:58:46.73ID:+7Kb6odcオブジェクトのViewの更新などを一元管理するマネージャークラスと
ロジックの同一メソッドを呼び出したいです。
void Click()
{
LogicManager.Instance.Click(this);
ViewManager.Instance.Click(this);
}
上のような書き方だとDragメソッドを追加した場合、
コピペをしていかなければなりませんが、
もっとスマートな方法はないでしょうか?
0105デフォルトの名無しさん
2014/07/26(土) 15:10:54.92ID:zn9EcAW40106デフォルトの名無しさん
2014/07/26(土) 15:43:20.17ID:oUeek/ov{
Click,
Drag,
...
}
...
void Click()
{
LogicManager.Instance.Do(this, Action.Click);
ViewManager.Instance.Do(this, Action.Click);
}
void Drag()
{
LogicManager.Instance.Do(this, Action.Drag);
ViewManager.Instance.Do(this, Action.Drag);
}
0107デフォルトの名無しさん
2014/07/26(土) 15:50:48.79ID:TIo93YdL0108デフォルトの名無しさん
2014/07/26(土) 16:55:54.55ID:+7Kb6odc0109デフォルトの名無しさん
2014/07/26(土) 16:59:12.89ID:nFKdU08jここにあるソースをVS2012にコピペすると
// 画像の色情報の取得
for (i = 0; i <>
for (j = 0; j <>
{
で構文エラーがるんだが、どうすればいいんですか?
0110デフォルトの名無しさん
2014/07/26(土) 17:02:48.99ID:8nNWA9Q8そのサイトの管理人に連絡してあげたらいいんじゃないでしょうか。
0111デフォルトの名無しさん
2014/07/26(土) 17:05:05.09ID:TIo93YdL普通のforにすればいいと思うけど、Bitmap扱う時はLockBitsとか使わないとクソ遅いぞ
ref int[,] iArrayとか見ても分かってないんじゃないのこの人
0112デフォルトの名無しさん
2014/07/26(土) 17:14:18.91ID:xYX2zmVY0113デフォルトの名無しさん
2014/07/26(土) 18:13:04.42ID:oUeek/ovこれは分かりやすいコメントですね
0114デフォルトの名無しさん
2014/07/26(土) 18:42:57.50ID:j8MnQQBx0115デフォルトの名無しさん
2014/07/26(土) 18:50:27.14ID:TIo93YdL0116109
2014/07/26(土) 21:01:43.76ID:nFKdU08jVBにすると
for I =0 to I
for J =0 to J
next J
next I
こんな感じの、普通の2重ループってことなのですなw
0117デフォルトの名無しさん
2014/07/28(月) 02:14:35.09ID:iIPJQPNtでもそれでもゲット出来ない物があるのですが、何か他に設定必要ですか?
0118デフォルトの名無しさん
2014/07/28(月) 20:35:32.53ID:OeppQSFP0119デフォルトの名無しさん
2014/07/28(月) 21:38:02.03ID:TI2394bg0120デフォルトの名無しさん
2014/07/28(月) 23:43:31.48ID:8+Kg3bmT別のcsファイルからリフレクションでenumを取得しようと思ったのですが、
string[] arr = Enum.GetNames(typeof(TestEnum));
↑は取得できるのですが、
Type t = Type.GetType("TestEnum");
文字列から取得しようとするとnullになってしまいます。
どうすれば取得できるのでしょうか?
0121デフォルトの名無しさん
2014/07/28(月) 23:44:56.13ID:8+Kg3bmTクラスに属していないといけないなど、何か決まりがあるのでしょうか?
0122デフォルトの名無しさん
2014/07/28(月) 23:57:54.31ID:QsHnd0QE0123デフォルトの名無しさん
2014/07/29(火) 00:00:53.88ID:jt6qgrVo名前空間をつけてenumを定義しました。
同CSファイルだと取得できますが、
違うCSファイルになると取得できませんでした。
そちらも当然同じ名前空間がつけてあります。
0124デフォルトの名無しさん
2014/07/29(火) 00:02:05.82ID:p/w2ar3b完全限定型名が必要になるぜ
0125デフォルトの名無しさん
2014/07/29(火) 00:02:33.10ID:jt6qgrVo0126デフォルトの名無しさん
2014/07/29(火) 00:26:24.96ID:jt6qgrVo0127デフォルトの名無しさん
2014/07/29(火) 00:51:36.27ID:jt6qgrVoありがとございやしたー
0128デフォルトの名無しさん
2014/07/30(水) 13:00:14.61ID:ViFnhaRIhttp://jeanne.wankuma.com/tips/csharp/dialog/openfile.html
ここの [読み取り専用] チェックボックスを表示部分で、「openFileDialog1.ShowReadOnly = true;」を省いたり、falseに変更するとフリーズするのでしょう?
メモ帳で入力したソースをWin7-64bitの.NET 3.5にあるcsc.exeでコンパイルして現象が発生しいます。
0129デフォルトの名無しさん
2014/07/30(水) 13:01:33.18ID:4eOtxaF4Mainメソッドに[STAThread]が付いてない
0130デフォルトの名無しさん
2014/07/30(水) 14:11:05.86ID:SQ43lNFbそういや昨日、BitmapImageをバックグラウンドのタスクから呼び出していて20分ぐらいハマったな
コイツだけさり気なく落ちるから気付くくまで時間がかかるんだよな
0131デフォルトの名無しさん
2014/07/30(水) 22:13:43.54ID:BXt3k7V+インデックスを意識せずに進んだり戻ったりしたい
0132デフォルトの名無しさん
2014/07/30(水) 22:38:39.13ID:hevpKXWy0133デフォルトの名無しさん
2014/07/31(木) 01:45:43.00ID:ECmf22BCまさにその通りでした。
Windowsフォームでのプログラミングを始めたばかりなので分かりませんでした。
FileDialogの派生クラスはSTAにする必要があったのですね。
ただ、何故ShowReadOnlyをTrueにするとビジーにならないのかがまだ解りませんが、おいおい理解を深めていきます。
有難うございました。
0134デフォルトの名無しさん
2014/07/31(木) 07:41:11.39ID:8BDU/9Qzそれ、終端ではどういう動きになる?
0135デフォルトの名無しさん
2014/07/31(木) 13:42:09.26ID:KgmaOunsマルチスレッド下で、Lock内からフィールドの変数へアクセスする場合、volatileは不要なのでしょうか。
不要だとすれば、常に一つのスレッドからアクセスされることが分かっている変数は、Lockもvolatile指定する必要はないということでしょうか?
0136デフォルトの名無しさん
2014/07/31(木) 14:16:28.12ID:CMs90KqI何言ってるのかよく分からんが、排他制御は「祟りに合わないためのおまじない」じゃない。
理屈を理解して使わないとダメだし、それはそんなに難しくない。
0137デフォルトの名無しさん
2014/07/31(木) 18:12:45.70ID:C0tjZ4HXなら排他制御必要なくね?
volatileについてはまずこれを読む。
C# メモリ モデルの理論と実践
http://msdn.microsoft.com/ja-jp/magazine/jj863136.aspx
C# メモリ モデルの理論と実践 (第 2 部)
http://msdn.microsoft.com/ja-jp/magazine/jj883956.aspx
0138デフォルトの名無しさん
2014/07/31(木) 18:34:46.82ID:KgmaOunsありがとうございます。
基礎的な知識が無いのに触っちゃ駄目ですね。勉強してきます。
0139デフォルトの名無しさん
2014/07/31(木) 19:58:26.40ID:eXBVk06O初心者にこんなの勧める人の言うことを聞いちゃだめw
0140デフォルトの名無しさん
2014/07/31(木) 21:35:22.40ID:C0tjZ4HXそもそもvolatile使ってみようっていうのは初心者じゃないでしょ
0141デフォルトの名無しさん
2014/07/31(木) 21:47:08.39ID:eXBVk06OそれがC#やCLRでどうやって実現されているかを知ることはイコールじゃない。
それはコンパイラを使うのにコンパイラの理論を知らなくても問題ないのと同じこと。
普通のプログラマにとっては前者を知るだけで必要十分。
0142デフォルトの名無しさん
2014/08/01(金) 01:18:50.44ID:wXjRLhW2/Page/Hoge.aspxがあるとして、コードビハインドHogeクラスから自身のパスを求める方法ってある?
名前空間とクラス名から求められそうだけど、パスと名前空間は一致しない可能性もあるし…
目的としては、できる限り文字列でパスを書きたくない
0143デフォルトの名無しさん
2014/08/01(金) 03:24:27.71ID:QJEXwkWPリクエストのURLで良いんじゃねえのか
それかそこからMapPathするとか
0144デフォルトの名無しさん
2014/08/01(金) 07:51:28.49ID:wXjRLhW2Response.Redirect(クラスからパス取得<TestWeb.Page.Hoge>()) みたいな
0145デフォルトの名無しさん
2014/08/01(金) 14:25:12.02ID:QJEXwkWP0146デフォルトの名無しさん
2014/08/01(金) 22:57:29.69ID:vuXUoB8O変数に代入しとけば文句でなさそう
0147デフォルトの名無しさん
2014/08/02(土) 01:22:07.14ID:A2e8j0iO確かに無理っぽいな
名前空間とクラス名から求めるのが無難か…変則的な命名はしないようにして
>>146
リダイレクトしてるaspx削除した時にエラーが出てくれたら便利じゃね?
0148デフォルトの名無しさん
2014/08/02(土) 16:59:29.93ID:3baSja/P.aspxの命名規則決めてURL機械的に生成するならまだわかるんだが
>リダイレクトしてるaspx削除した時にエラーが出てくれたら
404エラーがでると思うが
0149デフォルトの名無しさん
2014/08/02(土) 21:06:53.71ID:A2e8j0iO例えば>>144みたいな方式だとコンパイルエラーになってくれる
0150デフォルトの名無しさん
2014/08/02(土) 21:53:25.00ID:3baSja/P.aspxってサーバ側コード全く含まない単なるhtmlかもしれんのだが
そもそも特定クラスにリダイレクトしたいという場面が思い浮かばんが
0151デフォルトの名無しさん
2014/08/02(土) 22:09:36.20ID:A2e8j0iO↓みたいな一式の奴
Hoge.aspx
Hoge.aspx.vb
Hoge.aspx.designer.vb
外部サイトとか静的コンテンツなら普通にURL書くよ
まあ、定数使ったりDB管理したりするかもしれんが
0152デフォルトの名無しさん
2014/08/02(土) 22:12:04.93ID:A2e8j0iO0153デフォルトの名無しさん
2014/08/02(土) 22:27:09.68ID:3baSja/P0154デフォルトの名無しさん
2014/08/03(日) 00:15:54.46ID:klo46TE0_Defaultとかは知らん
0155デフォルトの名無しさん
2014/08/03(日) 22:43:55.88ID:aVI9IO6lコンパイルエラーで検出しようとすることが間違い
0156デフォルトの名無しさん
2014/08/04(月) 12:04:29.11ID:q+OJZa3I音声がずれる。mpc-hcではずれない。
音声遅延の設定ってできるかな?
0157デフォルトの名無しさん
2014/08/04(月) 12:43:01.70ID:ShcA9hEtあと動作比較ならWMPにしろよ
0158デフォルトの名無しさん
2014/08/04(月) 13:15:43.82ID:q+OJZa3Iそれで小手先療法にした。すまん。
一時停止して1秒ほど戻して再生させると音ずれが直るのを見つけたので
ずれたときはキーを押して修正することにしました。ばかすw
0159デフォルトの名無しさん
2014/08/07(木) 11:20:23.09ID:0GRqsv9Gデバッグの出力は動いてるからブラウザーだけが固まっているみたいですが対処法が分かりません。
同様のことをやっているソフトは他にもあるので特別特殊なことをやっている訳ではないはずですが。
他にないことと言えば5秒間隔で画面を監視して今どの画面にいるかを判別してるくらいです。
監視部分のプログラムはウェイト無しで一万回位ループ回しても問題なく動きます。
問題はWebBrowserコントロール側だとは思いますが、再現性無く例外も出ずお手上げです。
エラーダイアログの抑制はしています。
大体予想つくと思いますがアレです。データのサイズが手頃だったので。
0160デフォルトの名無しさん
2014/08/07(木) 14:46:32.67ID:36jzDVhH0161デフォルトの名無しさん
2014/08/07(木) 14:48:47.49ID:z2XDt5qn0162デフォルトの名無しさん
2014/08/07(木) 15:32:35.69ID:0GRqsv9G分かってて聞いてるますよね、畜生w
0163デフォルトの名無しさん
2014/08/07(木) 16:10:23.01ID:UtjYrkXD監視入れなきゃ止まることは無いの?
0164デフォルトの名無しさん
2014/08/07(木) 17:11:46.55ID:0GRqsv9G監視入れてない時から止まる時は止まってましたね。
0165デフォルトの名無しさん
2014/08/07(木) 17:28:19.69ID:UtjYrkXD何か出てないか探してみないとなんとも、、、うちで追試してみるかなあ、、、
もう半年以上ログインしてないがアカウントあるんだろうかw
0166デフォルトの名無しさん
2014/08/08(金) 02:17:44.20ID:BYLEl754以下のSQLを実行してDataTableにデータを取得したときに
[System.Int16]型になります。[System.Boolean]型で取得する方法を教えてください。
コードでConvert.ToBoolean((int)table.Rows[0]["Flag"]);って書くのが面倒で参ってる。
【環境】
NetFramework 2.0
// 【AccessのSQL】
// FlagはAccess上はYesNo型
SELECT CBOOL(Flag) AS Flag FROM Table
// いろいろ省略したコード
using(var reader = command.ExecuteReader())
{
DataTable table new DataTable();
table.Load(reader);
// ↓これがなぜかSystem.Int16になる。
// SQLでCBoolでキャストしてるのになぜに?
// 値はAccess上のTrueが-1で、Falseなら0で取れる。
table.Columns[0].DataType;
}
0167デフォルトの名無しさん
2014/08/08(金) 06:51:04.09ID:zQrgSKZs諦めて短く書ける方法を模索したら
少なくともConvert.ToBooleanは要らん
0168デフォルトの名無しさん
2014/08/08(金) 07:33:09.54ID:S2TqD3FtDataTableに型付カラム追加は嫌?
0169デフォルトの名無しさん
2014/08/08(金) 19:19:58.45ID:vJXv8MD8「Test1」クラスとTest1クラスを継承した「Test2」クラスがあるときメインクラスで
Test1 tes1 = new Test2 {処理}
Test2 tes2 = (Test2)tes1 {処理}
とした時はそれぞれどういう読み取り方をしているのでしょうか
0170デフォルトの名無しさん
2014/08/08(金) 19:36:09.86ID:6s2vkVirせっかくTest1に入れたのにあとからキャストしてる理由なら書いた奴に聞けとしか言いようがないが
0171デフォルトの名無しさん
2014/08/08(金) 19:47:18.30ID:zQrgSKZs0172デフォルトの名無しさん
2014/08/08(金) 23:33:58.49ID:hWu0CtOkStrings.StrConvは残念過ぎるので、無かったら自作しようかと
>>196
{処理}って何だ?初期化子?
0173166
2014/08/08(金) 23:56:21.47ID:YTdVsdZmSystem.Int16にマッピングされるのが普通なのですか知らなかった。
System.Boolean型で取得するのは諦めて!=0で判定することにします。
アドバイス感謝です。
>>168
なるほど、カラムを追加するのも一つの手ですね。
アドバイス感謝です。
0174デフォルトの名無しさん
2014/08/09(土) 00:36:40.24ID:j2iiR/U5そもそもSQLにCBoolとか無いから
最低限つかってるDBとプロパイダちゃんと書けよ
0175デフォルトの名無しさん
2014/08/09(土) 01:08:35.27ID:nApo80wj0176デフォルトの名無しさん
2014/08/09(土) 01:41:09.46ID:j2iiR/U5Jet.OLEDBプロパイダでMDBだと、Yes/No型でそのままSELECTすればちゃんとSystem.Booleanになる
Yes/No型(Bit型)はBooleanじゃないからな
ACCESSのヘルプによれば
>ブール型 (Boolean)
>2 種類の値、真 (True) (-1) または偽 (False) (0)のみを格納するデータ型。ブール型 (Boolean) の変数は、16 ビット (2 バイト) の数値として格納されます。
だから、CBoolの結果は2バイト
つまりInt16にマップされて当然
もともとYes/No型ならなんでわざわざCBoolとかする必要があるのか
0177デフォルトの名無しさん
2014/08/09(土) 02:42:52.86ID:gH6dyz5cどの辺りが残念なんだ?
0178デフォルトの名無しさん
2014/08/09(土) 08:24:13.81ID:vhTKaBjI゛゜゙゚
2文字で↓も
ヺ
0179デフォルトの名無しさん
2014/08/09(土) 08:30:47.58ID:P4J/peWK0180デフォルトの名無しさん
2014/08/09(土) 08:52:14.79ID:I4thkPZvカナの変換なら↓が使えるかな・・・
Microsoft Visual Studio International Feature Pack 2.0
0181デフォルトの名無しさん
2014/08/09(土) 12:11:06.77ID:ThCM2sNfそんなつまんない話よりも、こっちこっち↓笑える休憩タイム。
【「指ぱっちん」の天才霊能者八意先生に関するサイト】
天才霊能者の八意先生は埼玉県八潮市生まれ育ちの21歳です。
悩み事があるときや困ったことが起きたら、まず八意先生に相談しましょう。
以下のサイトをすべて読み終わったら、
腹を抱えて大笑いしてしまうことをお約束します(※ は無料心霊写真鑑定)。
お気に入りに追加することをお勧めします。
※ http://blog.goo.ne.jp/nichikon1/e/e066fd39cd23872a3c73cf91f4b50b8c
※ http://blog.goo.ne.jp/nichikon1/e/5aac5cd13eafbf5581a7e2ff79b6c16c
※ http://blog.goo.ne.jp/nichikon1/e/93b5c268d3aefeccd92753a7c58a6ded
※ http://blog.goo.ne.jp/nichikon1/e/788f3056778b0f74495648964bfb1d1e
※ http://blog.goo.ne.jp/nichikon1/e/da81f66fa7c437e7ca19667c2bf35065
※ http://blog.goo.ne.jp/nichikon1/e/d9d05d45085c29df2c0e994a4b60d816
※ http://blog.goo.ne.jp/nichikon1/e/475621ba2615792fe2478f597e31b488
http://www.reinou.jp/bai.html
http://www.reinou.jp/rei.html
http://www.reinou.jp/warashi.html
http://blog.goo.ne.jp/nichikon1
http://www.reinou.jp (八意先生の携帯番号はここ。)
八意先生が口にしたことは絶対に起こりません(地震が発生する日付の予想など)
でも、あなたのどんな悩みでも、八意先生が「指ぱっちん」で解決してくれます。
一応、コメントも含めてすべて読んでみてください。
☆コメントの書き込み・誹謗中傷も大歓迎です。☆
0182デフォルトの名無しさん
2014/08/09(土) 22:13:37.67ID:pmqfZ9Pxクラスの継承って使いやすいのでしょうか?
やり方は学んだのですが、
どういう状況で使うのか、今一つ解りません。
クラスを普通に呼んだ方が、コードが綺麗になるような気がして。。。
実際のところ、どうなのでしょうか?
0183デフォルトの名無しさん
2014/08/09(土) 22:16:22.20ID:oT4oz9MUググったところそれらしいものはないようなので質問しました
0184デフォルトの名無しさん
2014/08/09(土) 22:17:28.20ID:85AgQkaAIEnumerableのコレクションを自作する場合に楽だろ
実際はジェネリックがあるから自作する機会はまずないけど
0185デフォルトの名無しさん
2014/08/09(土) 22:20:03.94ID:P4J/peWKc# sound mute api
0186デフォルトの名無しさん
2014/08/10(日) 06:38:03.66ID:TiovmIJw0187デフォルトの名無しさん
2014/08/10(日) 07:13:16.40ID:22viYzQwVista以降ならCore Audio APIを使うんだが、ライブラリ使うと簡単に使える
例えばコレ
http://www.codeproject.com/Articles/18520/Vista-Core-Audio-API-Master-Volume-Control
音楽を本格的にコントロールするならNAudioとかBass.net等を使った方がいいが
0188デフォルトの名無しさん
2014/08/10(日) 08:18:18.62ID:zvbFbaEf最初はフォームの継承が一番分かりやすいと思う
基本のフォームを作成して、それを継承してポコポコ作っていくのよ
0189デフォルトの名無しさん
2014/08/10(日) 10:21:51.83ID:PVWd11gLそれ遅いだろ
List<T>は速度が速い代わりに用途制限されてるけど
0190デフォルトの名無しさん
2014/08/10(日) 10:36:10.56ID:TiovmIJwcallvirtとcallの速度差が体感できる人なのかな
0191デフォルトの名無しさん
2014/08/10(日) 10:37:57.45ID:RzrD/vWx>>182は多分、継承してぽこぽこ作るくらいなら、用途毎にクラス作って「普通」に呼べばいいとか思っている
0192デフォルトの名無しさん
2014/08/10(日) 11:36:04.86ID:ToinQTj6こういうのもあるけどな
0193デフォルトの名無しさん
2014/08/10(日) 11:39:05.84ID:qCUn903Vこっちの方がよくね
0194デフォルトの名無しさん
2014/08/10(日) 12:37:58.79ID:TiovmIJw非ネイティブ言語のパフォーマンス測定結果を貼るときは実行環境のバージョンも考慮したほうがいいよ
4.5系ならそんなに差は出ない
0195デフォルトの名無しさん
2014/08/10(日) 22:34:31.92ID:PjPhbHphベースのクラスに、実装に必要そうなDB接続処理やら
ファイル処理やらを混在させると、usingも膨れ上がって
凄く見にくいなと思いました。
DB接続するならDB接続クラス
ファイル処理をするなら、ファイル処理クラスを作って
都度、実体を作る方が、綺麗で解りやすい気がします。
とはいえ、オブジェクト指向がこれだけ盛んなのですから、
自分が思うよりも、メリットが多いんだろうなと
思う次第で。。。
0196デフォルトの名無しさん
2014/08/10(日) 22:45:04.85ID:vXAs/WBb何かそういう下手糞なコードを見て勘違いしてるのか?
0197デフォルトの名無しさん
2014/08/10(日) 23:22:38.79ID:O3T0ywQ9作るクラスにも人にもよるでしょう
俺だったらDB接続程度なら別クラスは作らない
0198デフォルトの名無しさん
2014/08/10(日) 23:37:24.27ID:h7eBXMwc0199デフォルトの名無しさん
2014/08/11(月) 15:58:47.56ID:fV8KAQup幅広く使われる機能を再利用するために継承を使うのは古くさいと思われてるけどまだ有効
0200デフォルトの名無しさん
2014/08/11(月) 17:52:50.36ID:LZcDhd6qこれは確かにそうなんだが
馬鹿には状況によりけりなんて方法論は通用しないじゃん
馬鹿はオールオアナッシングだから馬鹿なのだ
○○はアンチパターンだと脳髄に叩き込まれたら最後
状況によっては使っても問題ないという例外すら頭から吹き飛ばしてしまう
0201デフォルトの名無しさん
2014/08/11(月) 21:39:43.37ID:ewsfvN/gいざという時のTransactionScopeもあるし、もうDAO作る必要ないと思う
継承を使う場面て、GUIのFormやらASP.NETのPageかな
0202デフォルトの名無しさん
2014/08/11(月) 22:44:57.30ID:WQtg4xYB0203デフォルトの名無しさん
2014/08/11(月) 23:10:38.80ID:4y5T8ryj汎用的なラッパーだとDBアクセスが面倒なんだよ
0204デフォルトの名無しさん
2014/08/12(火) 04:33:33.28ID:iwXgz5NBインターフェイスじゃ駄目なの?
0205デフォルトの名無しさん
2014/08/12(火) 04:38:08.19ID:paAtTHMXその辺ってどの辺だよ
俺俺ライブラリは実装こそが必要なわけで、インターフェイスだけあっても
実装が無ければ何の意味も無いわけだが
0206デフォルトの名無しさん
2014/08/12(火) 06:35:00.88ID:mwrwIBg8全てが全てじゃないから両方あるんだけどね
0207デフォルトの名無しさん
2014/08/13(水) 19:34:53.73ID:AAheRmFdベースクラスとの直観的でない膨大な依存性が発生して
可読性が皆無に近くなるからな
0208デフォルトの名無しさん
2014/08/13(水) 19:44:34.97ID:tO58kIFd継承されたクラスはベースクラスに依存してるって主張?
0209デフォルトの名無しさん
2014/08/13(水) 19:51:20.10ID:EUHkWmQi0210デフォルトの名無しさん
2014/08/13(水) 19:52:55.50ID:tOwUt3z10211デフォルトの名無しさん
2014/08/13(水) 20:25:53.24ID:+QYs/J2/{
...
}
IEnumerable<A> a1 = new List<B>(); // 問題なし
IList<A> a2 = new List<B>(); // ←コンパイルエラー
どして?
0212デフォルトの名無しさん
2014/08/13(水) 20:27:05.40ID:tOwUt3z1プロが教えてくれるよきっと
0213デフォルトの名無しさん
2014/08/13(水) 20:35:57.04ID:EUHkWmQiA a = ie.GetEnumerator().Current; // Aへの代入は必ず成功する
対してIList<T>は出し入れするインターフェイスだから
A a = list[0]; // Aへの代入は成功する
list[0] = a; // Aを代入は無理
こういう事ができるようにIEnumerable<T>は宣言ではIEnumerable<out T>となってる
詳しくは
ttp://msdn.microsoft.com/ja-jp/library/dd799517.aspx
0214デフォルトの名無しさん
2014/08/13(水) 20:37:40.13ID:+QYs/J2/なっとく
0215デフォルトの名無しさん
2014/08/13(水) 23:26:31.75ID:AAheRmFdそう
根深くて全く切り離せない依存性が発生して
そのうち身動きがとれなくなる
0216デフォルトの名無しさん
2014/08/13(水) 23:44:13.56ID:CdExR14e0217デフォルトの名無しさん
2014/08/14(木) 00:08:00.25ID:AAheRmFdその時に継承していると密接に結びつきすぎて
全体がバラバラに崩壊してしまうのさ
単純な型の単純な組み合わせならこういうことは起こらない
0218デフォルトの名無しさん
2014/08/14(木) 00:33:08.40ID:vikQ1+r+汎用メソッドだけは引き継いで
0219デフォルトの名無しさん
2014/08/14(木) 00:46:24.12ID:q7TkIODT新しく作りなおさなくてもいいんだから
継承なんてやめたらいいのだ
0220デフォルトの名無しさん
2014/08/14(木) 01:54:31.03ID:sRN+xfnpベースクラスの形が変わるぐらい仕様変更されてるのに継承クラスの仕様はそのままって?
そりゃそんなに無関係なクラス同士なら継承する必要なんてないわな
0221デフォルトの名無しさん
2014/08/14(木) 03:10:01.53ID:pxWvkh5e用途を限定しない場合はEnumratorを返したほうがスマートなんでしょうか?
内部でListなんか作ったときなんかそのまま返しちゃっていますが。
0222デフォルトの名無しさん
2014/08/14(木) 03:22:36.57ID:KdYtw7FM内部で保持しているリストを外部で自由に書き換えられる作りは、ほとんどの場合避けた方がいい
そうではない、リストを作成して返すメソッドとかならIList型とかでいい
0223デフォルトの名無しさん
2014/08/14(木) 03:44:28.44ID:pxWvkh5eIList使ったことなかったけど使ってみます!
0224デフォルトの名無しさん
2014/08/14(木) 03:53:52.49ID:pxWvkh5eIList<string> list = new List<string>();
なんか何がしたいか分からなくなってきた;o;
0225デフォルトの名無しさん
2014/08/14(木) 03:54:43.30ID:mNiYegMq0226デフォルトの名無しさん
2014/08/14(木) 05:49:32.74ID:3TSi24g00227デフォルトの名無しさん
2014/08/14(木) 08:05:14.78ID:vikQ1+r+ローカル変数を抽象化するメリットはないんじゃないか
積極的にvar使っていけよ
>>225
ReadOnlyCollection<T>、ReadOnlyList<T>
インデックスアクセスが不要ならIEnumerable<T>
0228デフォルトの名無しさん
2014/08/14(木) 09:50:37.48ID:ISEo4/jU.Countプロパティが必要になったりしてやり直しとかよくある
0229デフォルトの名無しさん
2014/08/14(木) 12:10:25.49ID:Tb3ur59k拡張メソッドのCount()でいいよ
ICollectionを実装してたらいちいち列挙せずにCountプロパティが使われるからコストはない
0230デフォルトの名無しさん
2014/08/14(木) 13:01:12.67ID:ISEo4/jU0231デフォルトの名無しさん
2014/08/14(木) 13:13:54.93ID:vikQ1+r+0232デフォルトの名無しさん
2014/08/14(木) 14:12:10.21ID:2tof3LIX再度マジメに勉強してみたいと思ってます。皆さんの参考とした文献を教えて下さい
0233デフォルトの名無しさん
2014/08/14(木) 14:22:41.88ID:mNiYegMq0234デフォルトの名無しさん
2014/08/14(木) 14:33:59.69ID:gKLP5dsi真面目に勉強するほど中身あるかなあ。
IEnumerableとIEnumeratorを一度自分で実装してみればそれで十分でしょ。
0235デフォルトの名無しさん
2014/08/14(木) 17:19:43.10ID:5wWAIMwO0236デフォルトの名無しさん
2014/08/14(木) 17:44:32.54ID:KoQj0PZj(エラーは出ないですが、クリップボードにデータコピーしてくれません)。
private void button1_Click(object sender, EventArgs e)
{
Task.Factory.StartNew(
() =>
{
Clipboard.SetDataObject("テスト文字列");
});
}
何かいい方法はないでしょうか?
教えてください。
0237デフォルトの名無しさん
2014/08/14(木) 17:48:37.20ID:KoQj0PZjSetDataObjectではなく、SetTextにすればうまくいきました。
(ただ、疑問として、Taskの中でなければ
Clipboard.SetDataObject("テスト文字列");
でも「テスト文字列」がクリップボードにコピーされるのですが、Task中だとなぜコピーされないのかはわからないままです。
やりたいことは解決したので、問題はないのですが)
0238デフォルトの名無しさん
2014/08/14(木) 17:57:25.22ID:q4XoDj7Gデータ用意するところとかはともかく、
クリップボードにアクセスする部分だけはメインスレッドでやった方が安定しそう
0239デフォルトの名無しさん
2014/08/14(木) 18:01:42.70ID:iwMxtFqpSTAThreadじゃないと動かないプログラムってのが多数あって、多分SetDataObjectもその類だと思われる
内部でComを使っているものは動かないものが多いそうだ
って事で、そんなものに捕まった場合はBeginInvokeかInvokeを使って回避するのが常套手段です
0240デフォルトの名無しさん
2014/08/14(木) 18:04:27.48ID:KoQj0PZj(タスクの外に出したまま実行していました)
0241デフォルトの名無しさん
2014/08/14(木) 18:18:14.84ID:q4XoDj7GDataObjectのインスタンス作るところもSTA下じゃないと多分駄目だな
0242デフォルトの名無しさん
2014/08/14(木) 18:31:01.54ID:mNiYegMq0243デフォルトの名無しさん
2014/08/14(木) 19:59:04.25ID:KoQj0PZjありがとうございます。
解決はまだできていませんが、問題の原因はわかりました。
教えていただいた内容を元に調べたところ、次のサイトで今回の件が解説されていました。
STAThreadの意味は?: .NET Tips: C#, VB.NET
http://dobon.net/vb/dotnet/form/stathread.html
方法 : クリップボードにデータを追加する
http://msdn.microsoft.com/ja-jp/library/637ys738(v=vs.110).aspx
>Clipboard クラスは、シングル スレッド アパートメント (STA: Single-Threaded Apartment) モードに設定されたスレッドでのみ使用できます。
0244デフォルトの名無しさん
2014/08/14(木) 21:50:16.15ID:KoQj0PZjこれまでに見たことがない概念なので、イマイチ内容がよくわからず、
このへんとかを参考にしてソースをコピーして動かしてみようと思ったのですが、
http://ufcpp.net/study/csharp/sp_delegate.html
「OLE が呼び出される前に、現在のスレッドが Single Thread Apartment (STA) モードに設定されていなければなりません。」とでてそもそも動かず。。。
質問ではなくて挫折報告ですいません。
0245デフォルトの名無しさん
2014/08/15(金) 01:49:18.50ID:CyDz3wwlクリップボードのデータの取得、設定がうまくいかないときは
http://dobon.net/vb/dotnet/system/nostaclipboard.html
0246デフォルトの名無しさん
2014/08/15(金) 01:56:48.70ID:1e8miiUYA,B,Cなどのイベントハンドラを追加するとき、
obj += A
obj += B
obj += C
と足していけば、ABCの順に呼ばれる(この順序で正しいかい?)
逆にそこから、Bを引けば、
obj -= B
ACの順に呼ばれる
0247デフォルトの名無しさん
2014/08/15(金) 04:02:13.92ID:lLqTBTtVイベントに対する+=とデリゲートオブジェクト自体に対する+=って実は全く別の操作なんだぜ
後者は文字通り加算してるんだけど、前者は特殊なプロパティ呼び出しの一種だ
=がsetの呼び出しになるようなもん
0248デフォルトの名無しさん
2014/08/15(金) 09:11:24.84ID:b0b0FaSy知らない人にはよくわからないものから、まったく理解できないものに
なったと思う。
0249デフォルトの名無しさん
2014/08/15(金) 16:29:36.11ID:HcuU/6Wihttp://code.msdn.microsoft.com/ParExtSamples
↑これをダウンロードした中に
StaTaskScheduler.csというのがあるからそれをプロジェクトに追加して
Task.Factory.StartNewのTaskScheduler使うオーバロードにStaTaskSchedulerのインスタンスを設定すればTaskのスレッドがSTAになる
0250デフォルトの名無しさん
2014/08/15(金) 17:21:47.41ID:kWKWFX820251デフォルトの名無しさん
2014/08/15(金) 18:10:11.73ID:hUiEEqSg0252デフォルトの名無しさん
2014/08/15(金) 20:40:38.19ID:HcuU/6WiCOMという技術において、複数のスレッドからCOMのオブジェクトがアクセスされるときの約束事の一つ。
STA(シングルスレッドアパートメント)。アパートメントに入る(アクセスする)ときに自動的になんとか(マーシャリング)してくれるかわりに
性能的には最速ってわけじゃないよ、という感じ。
他にはMTA(マルチスレッドアパートメント)とかがあって、これはパフォーマンスはSTAより良いけどちゃんと自前で同期させてねという約束事。
OLE スレッド モデルの概要としくみ
http://support.microsoft.com/kb/150777/ja
0253デフォルトの名無しさん
2014/08/15(金) 22:28:46.02ID:qW4TrPbm0254デフォルトの名無しさん
2014/08/15(金) 23:19:03.99ID:zQitFObJコードを書いてコンパイルする。
0255デフォルトの名無しさん
2014/08/15(金) 23:31:22.55ID:5qqE9d/rむかーし調べたことがあるけど
確か登録する際にレジストリを適切に書けばなんとかなるとかなんとか
0256デフォルトの名無しさん
2014/08/16(土) 15:16:23.22ID:3yXS8Hioファイル(F)
│新規(N) Ctrl+N│
│開く(O) Ctrl+O│
│上書き保存(A) Ctrl+A│
こんな感じで、サブメニューの文字の右側がピッタリ揃っていますが、
これは何かこういう機能があるのでしょうか?それとも、スペースの
数を調整して揃えているのでしょうか?
C#のフォームにtoolStripMenuItemを使って同じようなメニューを作りたいのですが、
同じように揃えたいのです。
0257デフォルトの名無しさん
2014/08/16(土) 15:43:35.90ID:n9y9z0V30258デフォルトの名無しさん
2014/08/16(土) 15:45:33.73ID:3yXS8Hioありがとうございます。
0259デフォルトの名無しさん
2014/08/17(日) 13:28:21.08ID:ZU93glA/定義したら、メニューは無事に完成したのですが、問題が起こりました。
それは、例えば Ctrl+A を押したらFromがキー入力を受け取るようで、textBoxの
テキストの全選択(Ctrl+A)が出来なくなりました。他のショートカットキーも同じです。
どうすればtextBoxが受け取れるようにできますか?
0260デフォルトの名無しさん
2014/08/17(日) 13:37:45.62ID:06R8hAZMバカなのかマジで
0261デフォルトの名無しさん
2014/08/17(日) 14:18:37.81ID:ZU93glA/おまえみたいな童貞に聞いてない。
0262デフォルトの名無しさん
2014/08/17(日) 14:47:25.56ID:x1jf4qnuテキストボックスにフォーカスがあるときに
1. メニューだけ
2. テキストボックスだけ
3. 両方で
処理させる選択肢があるわけだが
1は嫌なんだろ?
じゃ2か3だけど、
3はユーザーの直感に反する動作になるだろうから普通の知能があれば却下する。
しかし2もモードによってショートカットキーの動作が変わるという最悪のUIだよ。
それでもよけりゃFormのProcessKeyMessageメソッドでもオーバーライドして判定しろ。
ようするにCtrl+Aなんて汎用的なキーを割り当てるな低能、ってことだよな〜
普通はAltにするだろ……
0263デフォルトの名無しさん
2014/08/17(日) 14:49:35.19ID:06R8hAZM>>259の仕様そのものは、要はメニューのイベントハンドラでTextBoxが入力フォーカスを
持っているかどうかで処理を分ければ簡単に実装できる。
でも普通はこんな馬鹿な仕様のUIなんか作らない。
少なくとも俺はこんな馬鹿なUI見たことない。
0264デフォルトの名無しさん
2014/08/17(日) 15:27:46.88ID:FZOf3SxN0265デフォルトの名無しさん
2014/08/17(日) 15:33:00.89ID:sI1u/7Zz0266デフォルトの名無しさん
2014/08/17(日) 19:37:24.48ID:1fj3Uw55・参照型の変数を使うときに毎回 new するのがめんどすぎるんですが、c# はそういうもんなんでしょうか?
・参照型メンバをもつクラスはコンストラクタで1つずつ new するというノリで合ってますか?
・string は参照型なのに string s = "hoge"; ってな具合に使えるのはなぜなのでしょうか?
0267デフォルトの名無しさん
2014/08/17(日) 19:45:31.22ID:sI1u/7Zz0268デフォルトの名無しさん
2014/08/17(日) 19:53:00.66ID:vFtnH5FG0269デフォルトの名無しさん
2014/08/17(日) 20:20:58.06ID:Ot0PKOG+・そういうもん。参照型はヒープにしかインスタンスを置けない。
・もしくはコンストラクタやプロパティで渡す。その方が単体テストはしやすい。
・"hoge"はヒープ上のどこかに勝手に作られてるStringオブジェクトへの参照を返す。
0270デフォルトの名無しさん
2014/08/17(日) 20:24:03.21ID:sI1u/7Zz0271デフォルトの名無しさん
2014/08/17(日) 21:04:29.28ID:ZU93glA/>>263
晩飯食った後少し考えたら上手くいったぞ。
童貞1号2号、また教えてくれよ!
0272デフォルトの名無しさん
2014/08/17(日) 21:13:43.96ID:sI1u/7Zz0273デフォルトの名無しさん
2014/08/18(月) 13:46:54.14ID:VSyd+JSt0274デフォルトの名無しさん
2014/08/18(月) 13:50:06.96ID:r8tHn57o0275デフォルトの名無しさん
2014/08/18(月) 20:50:48.38ID:cOfP4VQV0276デフォルトの名無しさん
2014/08/18(月) 22:54:25.98ID:irIfLVCeなるほど、ありがとうございますー
0277デフォルトの名無しさん
2014/08/18(月) 23:22:44.53ID:OdlWZdI30278デフォルトの名無しさん
2014/08/20(水) 10:35:49.88ID:7AUPK+eRもしくはサイトを教えて頂ければ幸いです。
0279デフォルトの名無しさん
2014/08/20(水) 10:57:40.25ID:Dp0mKQ3Tユーザーコントロールのクライアントのプロパティウィンドウに
表示できませんか?
内部コントロールをプロパティとして公開すると、内部コントロールの
プロパティがユーザーコントロールのクライアントのプロパティ
ウィンドウに表示できることは分かったのですが、
イベントタブの方に内部コントロールのイベントは表示できませんでした。
ユーザーコントロール.内部コントロール.イベント += (o,e)=>{}
のように自分でコーディングすれば、内部コントロールにイベントを
追加できますが、デザイナーから操作できないでしょうか。
UserControlでなく、内部コントロールを継承すればできそうですが、
内部コントロールが複数あるため、すべてのコントロールについて
そのような手段をとることができません。
0280デフォルトの名無しさん
2014/08/20(水) 11:04:28.63ID:3itp5IL2知らんがな。
はい、次。
0281デフォルトの名無しさん
2014/08/20(水) 11:39:46.32ID:ekRS8u1z0282デフォルトの名無しさん
2014/08/20(水) 12:17:34.91ID:6nqDeMnPイベントプロパティーを使ってUserControl自身のイベントとして公開するのが普通。
0283デフォルトの名無しさん
2014/08/20(水) 13:24:17.36ID:Dp0mKQ3T内部にSplitterPanelを持っていて
デザイン時にSplitterPanelをクリックすると
SplitterPanelのプロパティとイベントをいじれます。
これと同じように、内部に置いたコントロールを
いじれるようにできないでしょうか。
0284デフォルトの名無しさん
2014/08/20(水) 13:49:27.16ID:9ne3lOon0285デフォルトの名無しさん
2014/08/20(水) 13:53:18.19ID:k6J6U7+TInitialize, InternalControlDesigner, NumberOfInternalControlDesigners
辺りをオーバーライドして内部コントロールのデザイナ返せるようにして
ユーザコントロールのDesigner属性で(上記クラス, IDesitner)って指定すれば
まあ最低限動くっぽい
0286デフォルトの名無しさん
2014/08/20(水) 16:11:29.09ID:ekRS8u1z自己顕示欲が強いor初心者の糞回答
0287デフォルトの名無しさん
2014/08/20(水) 16:59:29.26ID:k6J6U7+T0288デフォルトの名無しさん
2014/08/20(水) 18:21:58.73ID:au1JYGQl0289デフォルトの名無しさん
2014/08/20(水) 20:05:14.17ID:ekRS8u1z0290デフォルトの名無しさん
2014/08/20(水) 21:31:17.25ID:3itp5IL20291デフォルトの名無しさん
2014/08/21(木) 00:04:51.61ID:XJB1lpOgttp://ideone.com/4hlLnY
1) 参照に System.Design を追加。
2) 適当なクラスファイルを追加して、上記のコードをコピペ。
3) ビルド
4) ツールボックスに UserControl1 が出てくるのでフォームにに貼り付ける。
参考程度に。
0292デフォルトの名無しさん
2014/08/21(木) 03:12:52.59ID:87qwD2AX入門者向けなら
Visual C# 2013 パーフェクトマスター とか
猫でもわかるシリーズ とか
あとはタイトルにVisualStudioと冠しているのを探せばよろしいかと
ある程度覚えて.NETの仕組み自体を理解したいならMS公式の
プログラミング.NET Framework(Jeffrey Richter) とか
でもこちらは上級者向け
0293デフォルトの名無しさん
2014/08/21(木) 03:38:41.48ID:NL9QY8jLどうもありがとうございます。
早速書店に行ってきます。
0294デフォルトの名無しさん
2014/08/21(木) 04:12:46.74ID:JsL1zQzE0295デフォルトの名無しさん
2014/08/21(木) 05:43:06.74ID:hIdRF2P50296デフォルトの名無しさん
2014/08/21(木) 05:45:42.59ID:hOocc919ビルド
0297デフォルトの名無しさん
2014/08/21(木) 06:02:45.49ID:hIdRF2P5projAとprojBが別々のソリューションなんですが、それが原因でしょうか?
0298デフォルトの名無しさん
2014/08/21(木) 06:41:10.58ID:6yN9jcnV本当に参照に追加されてるかどうか確かめるなら
コードエディタの方で名前空間.クラス名と打ち込んで色が変わるかどうか見る
0299デフォルトの名無しさん
2014/08/21(木) 07:16:36.23ID:hIdRF2P5アドバイスありがとうございます。
いろいろ試した結果、やはりソリューションが別々だと、
出ないようです。
Solution1
projA ここにUserControl1作成
projB projAを参照設定
==> projBでUserControl1がツールボックスに出る。
なので、同一ソリューションでは、上手く行く。
Solution2
projC projAを参照設定
==> projCでUserControl1がツールボックスに出ない。
ようするに、同一のソリューション内では正常なのですが、
異なるソリューションでは、出ないんです。
全部VS2013でFramework4.0です。何が悪いんでしょうか?
0300デフォルトの名無しさん
2014/08/21(木) 07:32:43.09ID:hIdRF2P5VS2013 Update3のバグじゃないかなと思うくらい出ないんです。
0301デフォルトの名無しさん
2014/08/21(木) 08:49:07.74ID:Yz297+aBツールボックスの右クリックのアイテムの選択で参照して追加する必要があったような
0302デフォルトの名無しさん
2014/08/21(木) 10:19:34.67ID:NL9QY8jL何か可笑しいですか?
0303デフォルトの名無しさん
2014/08/21(木) 12:41:11.80ID:9S57VCiO0304デフォルトの名無しさん
2014/08/21(木) 13:24:30.58ID:npCrOf/M0305デフォルトの名無しさん
2014/08/21(木) 13:29:01.36ID:hIdRF2P5デザイナーではなくて、コード上ではインテリセンスにも出るし、
Formの上に無事に表示されました。
UserControlといっても、単にButtonを一個置いただけのシンプルなものです。
ツールボックスに出ないのが不思議です。
0306279
2014/08/21(木) 13:40:15.40ID:qbNPYBVD>>291 でいけました。
ありがとうございました。
0307デフォルトの名無しさん
2014/08/22(金) 04:30:26.88ID:4uiJKXyLなにか他に原因があるんじゃないか?
もしその通りだとすれば、
サードパーティ製コントロール コンポーネントも全滅して
問題が大きくなっているはずだろうけど
そういう話は聞こえてこない
>>301 は試してみたのか?
0308デフォルトの名無しさん
2014/08/22(金) 08:41:21.23ID:iJwHIx30レスありがとうございます。
301を見落としていました。今試したところ、
XXX.dllにはツールボックスに配置できるコンポーネントが何もありません。
と出ます。困った。
0309デフォルトの名無しさん
2014/08/24(日) 12:42:01.47ID:EYMdVqe7片対数グラフで直線だから既に指数関数的増加だった
2014年に、西アフリカでアウトブレイクした潜伏期間延長型エボラの死者は、2014年8月半ばで1000人。←今ココ
2014年12月上旬で1万人。
この時点で世界規模で空路シャットダウン開始、世界経済大混乱
2015年5月で10万人。
2015年9月で100万人。
この時点で、第二次世界大恐慌発生
2015年大晦日で1000万人。
ちなみに
http://ja.wikipedia.org/wiki/2014%E5%B9%B4%E3%81%AE%E8%A5%BF%E3%82%A2%E3%83%95%E3%83%AA%E3%82%AB%E3%82%A8%E3%83%9C%E3%83%A9%E5%A4%A7%E6%B5%81%E8%A1%8C
:カナダ保健省のサイトでは体内に数個のエボラウィルスエアロゾルが侵入しただけでも発症するとしている
:ハマダラカが、吸血したての人の新鮮血を媒介しているという学説が浮上している
エボラ出血熱は蚊やアブに刺されただけで感染する。
:「この地域には内戦、政府による搾取、テロが長い間続いており、それによって生まれた恐怖、貧困、猜疑心などがある。エボラは耐え難い騒音に付け加えられた一つのざわめきに過ぎない」
現地では
や る 気 は 皆 無
0310デフォルトの名無しさん
2014/08/24(日) 13:57:00.60ID:gaQQwBox0311デフォルトの名無しさん
2014/08/24(日) 23:38:00.81ID:CUyBAPs+ユーザー コントロールの partial クラス定義のところで
[ToolboxItem(true)] がついてないとか
0312デフォルトの名無しさん
2014/08/27(水) 22:04:33.78ID:/LKK4qqK0313デフォルトの名無しさん
2014/08/27(水) 22:55:23.15ID:bHLx5W9n0314デフォルトの名無しさん
2014/08/27(水) 23:22:02.12ID:j7X/JcPX0315デフォルトの名無しさん
2014/08/28(木) 07:29:06.85ID:1HnlY5d+0316デフォルトの名無しさん
2014/08/28(木) 16:41:21.43ID:wWBbSxVR0317デフォルトの名無しさん
2014/08/28(木) 17:46:34.67ID:QwMv3Idg0318デフォルトの名無しさん
2014/08/29(金) 01:13:22.93ID:b0G4rJJs0319デフォルトの名無しさん
2014/08/29(金) 14:31:36.19ID:i+ciY2lr0320デフォルトの名無しさん
2014/09/02(火) 20:17:40.82ID:DKwFM48V0321デフォルトの名無しさん
2014/09/02(火) 20:33:16.35ID:ma9XsxCL探す方が賢明だと思う。
独習は読んだことないから正当な評価はできんけど。
いずれにしろ今時オブジェクト指向の理解を避けて通るのは無理。
って言ってもオブジェクト指向そのものは全然難しい話じゃないけど。
0322デフォルトの名無しさん
2014/09/02(火) 20:37:31.78ID:y16u0Hqwプログラミングできるようになりたいならぐぐりながら暗中模索して作れ
0323デフォルトの名無しさん
2014/09/02(火) 20:43:51.15ID:hUjf3Nke@ITの川俣の入門記事読めば?
川俣は好き嫌いがあるだろうけどあれだけは評価できる
0324デフォルトの名無しさん
2014/09/02(火) 23:49:49.18ID:+PmGTbdCそんで普通に練習用のアプリ書いたら
いつの間にか構造体とその構造体専用の関数が増えてきたなあって気が付くだろ
それを言語レベルで書きやすくサポートしたのがオブジェクト指向な
合理的に考えて行ったら誰でもすぐに辿り着く方法のひとつでしかない
先人はオブジェクト指向なんて仰々しい名前を付けて有り難がってるけど本来そんなに難しく構えるもんじゃないんだよ
人間の赤ん坊が二本足で歩き出すように自然に気が付き身に付くものだから本なんか読まなくてもいいよ
とにかく良く考えてコードを書くことだ
そうすればオブジェクト指向は自然に身に付く
0325デフォルトの名無しさん
2014/09/03(水) 00:02:58.72ID:lXYrBgsz0326デフォルトの名無しさん
2014/09/03(水) 00:12:04.06ID:Tb5gOUQTそれは逆だよ
記述を楽にするためにOOPが発明されたのではなく
OOPでの実装を楽にするための記述が発明されたんだよ
OOPを楽にするためにプレフィックスを書かなくてもいいような言語を作ったわけだな
0327デフォルトの名無しさん
2014/09/03(水) 00:30:49.07ID:1QhJ8A9t仕様変更が有ったときは、特に巨大アプリだったら1つも漏らさず修正して回るのは大変だし、
どっかの処理がミスってたというのは有りがちのバグだったりする。
でも、そのグローバル変数にアクセスする為のライブラリ一式が提供されて、
それを通じてしか変数に触れないようになっていれば、そのライブラリを修正すれば良くて、
どっかの処理がミスることも有りえない。
という風に考えると現実的で分かり易いかな。
↑これが、いわゆるカプセル化というもので、
そのライブラリを容易に拡張する仕組みが「継承」だし、
同じインターフェースのまま、ライブラリ側の処理をごっそり差し替えることが出来る仕組みが「多態」だしで。
「オブジェクト指向」なんて名前だと、「物として考える??何のために??」なんて、初心者には訳わからんよね。
0328320
2014/09/03(水) 00:49:09.80ID:5O+o1mFvとりあえず何となくはわかってきたんですが、コンストラクターやらなんやらで頭がこんがらがってしまいました。とりあえず分かるまでここはひたすらリピートして、ほかの記事も読みながらやってみます。
30超えてのプログラミングチャレンジですが、なんとか物にしたい!
0329デフォルトの名無しさん
2014/09/03(水) 01:04:58.71ID:1QhJ8A9tそういう仕組みの無い言語だと、初期化漏れでバグるというのが、まれに頻繁に有るw問題だったりするw
0330デフォルトの名無しさん
2014/09/03(水) 02:17:14.17ID:IorV3B6b0331デフォルトの名無しさん
2014/09/03(水) 02:57:54.26ID:tM7J5uOO0332デフォルトの名無しさん
2014/09/03(水) 07:19:57.80ID:0crzKw/tコンストラクタと変数宣言時の自動初期化はまた別の話だろ
0333デフォルトの名無しさん
2014/09/03(水) 07:51:56.21ID:gbep5tPJ上で書いたのは、非オブジェクト指向言語では、むき出しの変数に対する初期化とか初期処理が
漏れてしまうことが有るけど、クラス化によるカプセル化でそれが無くなるという内容を意図してる。
0334デフォルトの名無しさん
2014/09/03(水) 10:11:26.34ID:WbIyRM3Cclass Point(int x, int y)
{
public int X{ get; } = x;
public int Y{ get; } = y;
}
C#erはこんなので喜んでるけど、Xが3箇所、Yが3箇所に出てくる
いままでだと
class Point
{
public int X{ get; private set; }
public int Y{ get; private set; }
public Point(int x, int y)
{
X = x; Y = y;
}
}
4箇所だったのが、3箇所になった程度で喜んでるわけじゃん
もっとScalaみたいに
class Point(val int X, val int Y){}
こんな決まり文句は1箇所で、一行でかけなければ導入する意味が無いと思うんだよ
0335デフォルトの名無しさん
2014/09/03(水) 10:50:57.16ID:K9clyNMl0336デフォルトの名無しさん
2014/09/03(水) 12:55:17.48ID:SJ+lkstvその程度察する能力は持てよ
0337デフォルトの名無しさん
2014/09/03(水) 13:09:50.70ID:/IfKcUHI0338デフォルトの名無しさん
2014/09/03(水) 21:35:36.64ID:S+Bh3MK5>もっとScalaみたいに
>class Point(val int X, val int Y){}
C#er()の感覚だと本来それは「キモい」んだよ
まあいろいろキモい新機能が追加されてきちゃったわけだけども
0339デフォルトの名無しさん
2014/09/04(木) 00:43:49.33ID:wyz+uFP00340デフォルトの名無しさん
2014/09/04(木) 01:13:04.28ID:m8z0a+Ny上のコードのように初回アクセスのみなにかしら初期化処理を実行
それ以後はオブジェクトを返すだけ
アクセスするまではnullのまま
このコードからif文のオーバーヘッドを取り除くにはどう書けばいいの?不可能?
0341デフォルトの名無しさん
2014/09/04(木) 01:32:34.99ID:RKO8bX3Lこういう感じ?
動くか知らん。
private Func<CX> retX = () =>
{
x = new CX();
retX = () => x;
return x
};
....
public CX X
{
get { return retX(); }
set {...}
}
0342デフォルトの名無しさん
2014/09/04(木) 01:36:11.93ID:RKO8bX3LVBならできそうだけど。
やっぱりコード書いてないとどんどん忘れるな。
0343デフォルトの名無しさん
2014/09/04(木) 01:40:01.66ID:m8z0a+Nyifよりコスト大きくない?
0344デフォルトの名無しさん
2014/09/04(木) 01:44:04.79ID:RKO8bX3L0345デフォルトの名無しさん
2014/09/04(木) 01:48:01.72ID:B/UF4Mggx が任意のクラスのメンバーなら、そのクラスインスタンス作成時に初期化すればいい
そうでないなら、(if 文でなくても)なんらかの分岐は避けられないんじゃね
三項演算子とか null 合体演算子とかショートサーキット評価とかでも見えない分岐はあったと思う
コードメトリックスを計算するとサイクロマティック複雑度の値で分岐の存在がわかるはず
>>341
できる
0346デフォルトの名無しさん
2014/09/04(木) 05:37:13.86ID:TIeZUDIHわざわざlazyな初期化かつキャッシュしたいってことは尚更
0347デフォルトの名無しさん
2014/09/04(木) 05:38:21.51ID:wyz+uFP00348デフォルトの名無しさん
2014/09/04(木) 05:46:13.31ID:TIeZUDIHでも>>346で言ったようにまずは測定してみるべきだけどね
インスタンス生成と分岐の処理時間は何倍で、初期化以後に何回程度そのインスタンス取得メソッドが呼ばれるか
0349デフォルトの名無しさん
2014/09/04(木) 06:26:48.95ID:zRlj+QsQ0350デフォルトの名無しさん
2014/09/04(木) 09:12:58.43ID://Mt3g2G0351デフォルトの名無しさん
2014/09/04(木) 20:30:39.19ID:SeObKpOy0352デフォルトの名無しさん
2014/09/04(木) 20:42:18.94ID:FUEgnzZL「'classTest.Form1.Employee' に、引数を 2 個指定できるコンストラクターがありません」
とエラーが出ます。
これは、どのような書き方をすれば良いのでしょうか?
よろしくお願いします。
public void test()
{
List<Employee> employeeList = new List<Employee>();
employeeList.Add(new Employee(2, "William Henry Gates"));
employeeList.Add(new Employee(1, "Lawrence Edward Larry Page"));
}
public class Employee
{
public int ID { get; set; }
public string Name { get; set; }
}
0353デフォルトの名無しさん
2014/09/04(木) 20:56:35.89ID:SeObKpOy0354デフォルトの名無しさん
2014/09/04(木) 20:58:05.35ID:CRg7xf6G(1) 「引数を 2 個指定できるコンストラクター」を書く。
(2) プロパティー初期化子を使う。
0355デフォルトの名無しさん
2014/09/04(木) 21:03:03.22ID://Mt3g2G本当に苦痛だよね
0356デフォルトの名無しさん
2014/09/04(木) 21:33:28.40ID:FUEgnzZL以下のように書くことができました。
ありがとうございました。
public void test()
{
List<Employee> employeeList = new List<Employee>();
employeeList.Add(new Employee() { ID = 2, Name = "William Henry Gates" });
employeeList.Add(new Employee() { ID = 1, Name = "Lawrence Edward Larry Page" });
}
public class Employee
{
public int ID { get; set; }
public string Name { get; set; }
}
0357デフォルトの名無しさん
2014/09/04(木) 21:45:26.04ID://Mt3g2Gヌルポインタエクセプションに遭遇することになんのさ
0358デフォルトの名無しさん
2014/09/04(木) 23:55:40.83ID:T9GfJae90359デフォルトの名無しさん
2014/09/05(金) 00:32:33.87ID:a7+2CN2uそういう考え方もあるんだな
俺は .NET を始めたときに
デストラクタを書かない風習が気持ち悪かった
0360デフォルトの名無しさん
2014/09/05(金) 06:25:47.09ID:9R1ZKGlv0361デフォルトの名無しさん
2014/09/05(金) 16:40:11.49ID:8DUbPaVU必要な動作の割に処理速度が早過ぎるから多分キャッシュされてるんだと思うんだけど
var table = obj.GetType().GetIsTable();
bool? nullable = table[type.ID];
if(nullable == null)
{
bool result = Calc(obj, type);
table[type.ID] = result;
return result;
}
else{ return nullable.Value; }
0362デフォルトの名無しさん
2014/09/05(金) 17:02:32.84ID:TpiIS8S+ILレベルなら構造体にも使えるasみたいな命令が存在してるので
それでnullかどうかテストする
x86レベルならインスタンスが型情報へのポインタを持ってるので
そのポインタが指すアドレスが指定されている型情報のアドレスと一致してるかテストする
0363デフォルトの名無しさん
2014/09/05(金) 18:21:11.92ID:hFhhE4Vw{
public string s;
public MyClass()
{
s = "�Aコンストラクラの設定を優先したい";
}
}
static void Main()
{
MyClass mc = new MyClass() { s = "�@初期値を入れるが" };
Console.WriteLine(mc.s);
}
実行すると、�@が表示されるのですが、コンストラクタ内での設定を優先する
ことは可能でしょうか?
0364デフォルトの名無しさん
2014/09/05(金) 18:29:39.24ID:NecQB92T0365デフォルトの名無しさん
2014/09/05(金) 18:46:56.49ID:8DUbPaVU一致じゃないでしょ
isは継承・実装されてるか調べるんだから親をたどっていく必要があるでしょ
でも測ってみると親を辿らなきゃいけないケースでも全然時間がかかってない
0366デフォルトの名無しさん
2014/09/05(金) 19:06:41.73ID:hFhhE4Vwレス有難うございます。
sはプライベートには出来ない事情がありまして、それは、
sの初期値がファイルに保存されているので、それをコンストラクタ内で
読み込みsに設定してます。
もしファイルが無い場合に限り�@の初期値をsに入れたいのですが、どうやっても、
�@が設定されてしまうんです。
0367デフォルトの名無しさん
2014/09/05(金) 19:10:26.27ID:aX2ucZki読んだままの意味っていうか、よくis-a関係とhas-a関係の違いって文脈で出て来る
isの意味そのまんまっていうか。
0368デフォルトの名無しさん
2014/09/05(金) 19:25:22.30ID:79mj9gnxプロパティにすれば?
private string _s = null;
public string S {
set { if (_s == null) _s = value; }
}
0369デフォルトの名無しさん
2014/09/05(金) 19:47:30.79ID:TpiIS8S+そだね 一致しない場合はインスタンスの型情報へのポインタが指す型情報の
親とで一致するかってのをさかのぼる必要があるね
でC0からC9まで継承関係作って試してみたけど
c9 is C9とc9 is C5とc9 is C0でちょうど良い感じの時間差が出てるよ
0370デフォルトの名無しさん
2014/09/05(金) 19:57:16.27ID:y1mYSEPB>ファイルが無い場合に限り
をどう判定するかによるんじゃないの
0371デフォルトの名無しさん
2014/09/05(金) 20:10:18.35ID:0CDHk7zA�@の初期値をコンストラクタで設定 or コンストラクタの引数にする or >>368
0372デフォルトの名無しさん
2014/09/05(金) 21:08:35.96ID:hFhhE4Vwありがとうございました。この方法で出来ました。
初期化の順番は、コンストラクタが最初で、次に初期化子
のようですが、この順番は保証されているのでしょうか?
ググっても分りませんでした。
0373デフォルトの名無しさん
2014/09/05(金) 21:20:12.20ID:L9jBRhl4T t = new T(){ member = m };
↓
T t = new T();
t.member = m;
と同値
0374デフォルトの名無しさん
2014/09/05(金) 21:47:28.09ID:hFhhE4Vw解説、ありがとうございました。
追加で質問なのですが、
ファイルが無く、初期化子でも初期値が与えられ無かった場合に、
デフォルトの初期値を与えたい場合のやり方が分りません。
368さんの方法で、初期値 null を
private string _s = "�Bデフォルト初期値";
としたらうまく動かないですよね。どうしたらいいでしょうか?
0375デフォルトの名無しさん
2014/09/05(金) 21:56:27.31ID:0CDHk7zA0376デフォルトの名無しさん
2014/09/05(金) 21:58:23.14ID:L9jBRhl4そこを分離して考えた方がいいと思う
常にファイルを使うクラスなら、パス文字列を受けるコンストラクタにして
有効なパスを渡す責任をどこか別のクラスなりに使用者の責任にするとか。
無効なら例外投げる。
0377デフォルトの名無しさん
2014/09/05(金) 22:22:56.34ID:zQgA7CgwそれをMyClass.sに渡しなよ
0378デフォルトの名無しさん
2014/09/05(金) 22:28:10.39ID:8DUbPaVUhttp://ideone.com/QvbEBP
全然出ないけど
0379デフォルトの名無しさん
2014/09/05(金) 22:41:00.88ID:0CDHk7zAhttp://ideone.com/evU4S0
後、ideoneよりローカルの方が差が出るっぽい
0380デフォルトの名無しさん
2014/09/05(金) 22:41:20.23ID:TpiIS8S+0381デフォルトの名無しさん
2014/09/05(金) 22:43:08.08ID:8DUbPaVUhttp://ideone.com/xG8MSu
http://ideone.com/xYwbJb
たしかにちょっと違いはあるね
法則はよく分かんないけど
0383デフォルトの名無しさん
2014/09/06(土) 11:00:00.64ID:lDOzh9kA0384デフォルトの名無しさん
2014/09/06(土) 11:12:54.02ID:pLN4mCUo0385デフォルトの名無しさん
2014/09/06(土) 11:55:53.42ID:/AsM7GKg0386デフォルトの名無しさん
2014/09/06(土) 12:26:18.17ID:4S46Uu0iと思ったがvar使った方がコンパイル時間が短くなる可能性もありそう
0387デフォルトの名無しさん
2014/09/06(土) 13:33:42.01ID:KJA2RRpG> 数クロック伸びるぐらいか
そんな微妙なわけないだろ w
> と思ったがvar使った方がコンパイル時間が短くなる可能性もありそう
これはあるかも
字句解析は楽になるし、型名書かれてたら、色々チェックも要るしな
0388デフォルトの名無しさん
2014/09/06(土) 14:43:12.03ID:bx1LvhhzMicrosoft Windows SDK for Windows 7
Windows SDK for Windows 8.1
の二つありますが、どちらを入れればよいでしょうか?
とりあえず8.1のほうが新しいようなので8.1入れておけばよいですか?
0389デフォルトの名無しさん
2014/09/06(土) 15:00:15.85ID:GuSRX+KMVS2013Expressを入れるだけでいい
0390デフォルトの名無しさん
2014/09/07(日) 05:12:05.68ID:AvfUsBTOvc++だったらビルドログに書いてあるのによォ
0391デフォルトの名無しさん
2014/09/07(日) 07:44:14.82ID:KNwhARCnコンパイル時にインライン展開は一切行われない
インライン展開が行われるのはJITコンパイル時
ブレークポイントかけてアセンブリコードを確認するくらいしかないな
0392デフォルトの名無しさん
2014/09/08(月) 15:29:39.83ID:xt4eq/u0簡素で魅力のないサンプルソースで文法を解説していますが
全く頭に入ってきません
理解しやすいように書けているとは思います
**ただ、デリゲートを使用して単純な四則演算をした結果をコンソールに文字列として表示したいとは思いません**
「一歩踏み込んでなぜそういう機能が必要なのかを説明する」と銘打っておきながら全くその部分を表現できていない気がします
初心者にとって必要なのはより実用的で魅力のある例題をC#を使って如何に実現していくかです
その過程において、各種文法を説明してもらえると非常に参考になると思います
0393デフォルトの名無しさん
2014/09/08(月) 15:34:52.16ID:Q1dnaSh80394デフォルトの名無しさん
2014/09/08(月) 15:34:59.01ID:7lA1CirZ0395デフォルトの名無しさん
2014/09/08(月) 15:41:14.45ID:xt4eq/u0大変崇高なお考えを表明していたわりに
文法を解説するのが目的とするような構成になっているのが残念です
これでは見ている人は目的を見つけられないままです
ある程度プログラミングに熟達した人で、目的は既に有り、参考程度にチラ見するのには良いとは思いますが…
0396デフォルトの名無しさん
2014/09/08(月) 15:43:05.84ID:uk89ZkdW0397デフォルトの名無しさん
2014/09/08(月) 15:54:15.31ID:xt4eq/u0ここで問題が起きました
画像をダウンロードしている間、操作が受付られません
これではキャンセルしたくてもできないことになります
非同期プログラミングの解説
どうせなら、Googleだけじゃなくて、楽天の商品一覧も表示できるようにしよう
こちらも同じ操作で画像一覧を取得できるようにしたい
URLから自動で判別、判別したサイト用の画像ダウンロードクラスを返せるようにしたい
ここでFactoryデザインパターン、多態性、インターフェースなどの解説
ダウンロードした画像を保存したい
データベースの解説
0398デフォルトの名無しさん
2014/09/08(月) 15:58:00.98ID:xt4eq/u0実際に文法がどのように使われているかをより理解できると思います
画像ビューアは人によって魅力的には感じないかもしれませんが
あらゆるソフトを開発する上で参考になると思います
少なくともコンソールに文字列を書くだけのコードよりはマシだと思います
0399デフォルトの名無しさん
2014/09/08(月) 16:07:24.73ID:xt4eq/u0ここが初心者にとっての大きな壁になるのは間違いないです
頭に思い浮かべる理想のソフトウェアと文法との溝を埋めるのに時間を費やすのが大半だと思います
わからない言葉は検索すれば大抵わかります
しかし、わからないことがわからないのでは調べようがありません
Google用、楽天用のクラスを作ったとして
それらクラスをインターフェースを通して同じように扱い簡潔なコーディングができること自体が知らないのです
簡潔に書きたいという発想すら出ないかもしれません
0400デフォルトの名無しさん
2014/09/08(月) 16:37:43.80ID:Ur6ZrZoJコピペで動かないサンプルコード書くなとか
実用性のないサンプルコード書くなとか
お前は逆引き辞典でも写経してろ
いま流行だからな、写経
0401デフォルトの名無しさん
2014/09/08(月) 16:46:38.08ID:kOvGrd4l0402デフォルトの名無しさん
2014/09/08(月) 16:47:24.62ID:JTBqJ7f/0403デフォルトの名無しさん
2014/09/08(月) 16:49:16.64ID:MqCKZXv3全選択された表示になりますが、これをさせないようにするお勧めの方法教えてください。
ググったのですが結局良く分りませんでした。一切全選択させないようにしたいのです。
0404デフォルトの名無しさん
2014/09/08(月) 16:51:57.59ID:+gKVwBSiバカにしてる奴もいるけど、俺は君の考えに賛成だよ。
ぜひとも頑張って後陣のための解説を書いてくれ。
0405デフォルトの名無しさん
2014/09/08(月) 17:00:17.83ID:MqCKZXv3誤:Form1置いた
正:Form1に置いた
でした。アドバイスよろしく。
0406デフォルトの名無しさん
2014/09/08(月) 17:17:58.99ID:Ex7harALプロパティに何かあったと思うわ
0407デフォルトの名無しさん
2014/09/08(月) 17:28:59.09ID:Q1dnaSh8つまり、テキストの手入力はさせたいけど全選択だけはさせたくないって事?
マウスでテキストの端から端までドラッグしたらどうなるの?
0408デフォルトの名無しさん
2014/09/08(月) 17:46:16.93ID:7lA1CirZフォームのOnLoadとか適当なところに
comboBox1.GotFocus += (x, y) =>
{
comboBox1.SelectionLength = 0;
}
とか入れておけば一応実現できるようだけど、ちょっと不恰好だね。
0409デフォルトの名無しさん
2014/09/08(月) 18:16:40.18ID:MqCKZXv3408さんの方法でできました。サンプルコードありがとうございます。助かりました。
>>407
私の説明不足でした。
一切全選択させないと書きましたが、それは、間違いで、
通常のユーザー操作で文字列の選択などは普通に出来るのが望ましいのですが、
Formが表示された時に、勝手に全選択になるのでそれを防止したかったのです。
comboBox1のアンカーをFormの左右に張り付けると、Formがリサイズした時にも
勝手に全選択になりましたので、resizeイベントにもSelectionLength=0を入れました。
どうして、conboBoxは、勝手に全選択する動作するのでしょうか?
0410デフォルトの名無しさん
2014/09/08(月) 21:35:15.34ID:7bILeyvzWindowsの仕様っぽい挙動なので諦めるしか無いね
0411デフォルトの名無しさん
2014/09/08(月) 22:22:31.79ID:DOYjbwxO特殊型ってことで深く考えたらダメなのか…
0412デフォルトの名無しさん
2014/09/08(月) 23:25:25.90ID:JcWBhojR0413デフォルトの名無しさん
2014/09/09(火) 00:35:16.81ID:dbFehtIN具体的にはSQLのパラメータとしてobject[]形式で渡したいんですが
0414デフォルトの名無しさん
2014/09/09(火) 00:42:26.19ID:bLmIR7/jリフレクションを使えばOK
0415デフォルトの名無しさん
2014/09/09(火) 01:14:02.34ID:dbFehtIN{
var properties=this.GetType().GetProperties();
foreach(var p in properties )
{
yield return p.GetValue(this);
}
}
こんな感じでしょうか?
できたような気がします
ありがとうございました
0416デフォルトの名無しさん
2014/09/09(火) 01:22:12.09ID:AwUfMfP30417デフォルトの名無しさん
2014/09/09(火) 01:41:52.39ID:dbFehtIN{
return this.GetType().GetProperties().Select(p=>p.GetValue(this));
}
こんな感じですか?
いろいろやり方があるんですね
勉強になりました
0418デフォルトの名無しさん
2014/09/09(火) 12:46:17.84ID:zTFR0fil0419デフォルトの名無しさん
2014/09/09(火) 16:42:10.33ID:QvtMIPgo0420デフォルトの名無しさん
2014/09/09(火) 20:10:12.62ID:3ojrWj8IForm1.exeプロジェクトのDebug構成から参照設定すると、
Form1.exeプロジェクトのRelease構成もClass1.dllのDebugのほうを
参照するころになりますが、どうしてReleaseならReleaseを参照しないのでしょうか?
どうすればDebugとDebug、ReleaseとReleaseの参照設定にできますか?
0421デフォルトの名無しさん
2014/09/09(火) 20:14:32.65ID:AwUfMfP30422デフォルトの名無しさん
2014/09/09(火) 20:41:22.26ID:3ojrWj8I試したのですが
Solution1
Class1 PJ
Form1 PJ
のように、
が同じソリューションならDebugとDebug、ReleaseとReleaseに出来たのですが、
Solution1
Class1 PJ
Solution2
Form1 PJ
のように別々のソリューションの場合には、DebugとDebug、ReleaseとDebugになってしまうのですが、
この場合はどうすればよいでしょうか?
0423デフォルトの名無しさん
2014/09/09(火) 20:48:25.62ID:AwUfMfP3〜projファイル見てるだけだから
0424デフォルトの名無しさん
2014/09/09(火) 20:53:22.98ID:AwUfMfP3Solution2にClass1 PJを追加する必要がある
(既存プロジェクトの追加とかで)
0425デフォルトの名無しさん
2014/09/09(火) 21:11:14.79ID:3ojrWj8Iたびたびレス有難うございます。
上手く行きました。感謝です。
>>Solution2にClass1 PJを追加する必要がある
>>(既存プロジェクトの追加とかで)
これを行うと、Class1 PJがソースコードも含めて全てSolution2に
コピーされると勘違いしていました。
とにかく有難うございました。
0426デフォルトの名無しさん
2014/09/09(火) 23:58:48.08ID:L9KAhRjpConditionという便利なものがあるからそれを使えばいいよ
プロジェクト参照は相互参照したケースなどに対応できないから頼らない方がいい
0427デフォルトの名無しさん
2014/09/10(水) 06:30:26.69ID:Nhb5WnWQ0428デフォルトの名無しさん
2014/09/10(水) 06:39:29.40ID:YXIdBL/V調べるとSqlDataAdapterでDataTableを取得してDataGridViewに表示する方法と
SQLiteDataReaderを使ってList<>型でデータを取得する方法がありました
前者の方が手軽に思えるのですが、あえてSQLiteDataReaderする意味はあるのでしょうか?
将来的にはどちらがいいのでしょうか
0429デフォルトの名無しさん
2014/09/10(水) 11:34:11.38ID:ofDxZsuVどっちが良いでしょうか?
0430デフォルトの名無しさん
2014/09/10(水) 12:34:45.05ID:ofDxZsuVというデータ構造の変数を定義したら、プログラミングが物凄くややこしくなりそうなのですが、
もっとお勧めの方法ありますか?
0431デフォルトの名無しさん
2014/09/10(水) 14:35:04.65ID:IWx4FyJEボタンの表示をカスタムしたいのですが、うまくいかないため質問致しました。
1.
通常のボタンはクリックされている時と離した時にグラフィックが変わります。
同じように画像を2種類用意して、ボタンがクリックされている時と離した時にグラフィックが変わる方法が知りたい。
(button1_Clickで試していたのですが、クリック毎変える方法しか出来ませんでした)
2.
用意した画像とボタンの形を合わせたいので、ボタンの形状を変更する方法が知りたい。
(どこのコードを弄ればよいかわからないのです)
3.
フリー素材のカスタムコントローラーがあれば配布先を紹介して欲しい。
(1つ見つけたのですが、ビルド時にエラーとなり使用できませんでした)
知識があまりないので質問内容がわかり難いかもしれませんが、上記についてわかる方がいましたら、ご回答よろしくお願いします。
0432デフォルトの名無しさん
2014/09/10(水) 14:44:07.11ID:fLkR7p90.NETにも一部相互参照してる部分があるしバカ
0433デフォルトの名無しさん
2014/09/10(水) 19:22:26.20ID:4sCEstRk0434デフォルトの名無しさん
2014/09/10(水) 19:52:52.34ID:ofDxZsuVConditionという便利なもの
プロジェクト参照
どっちがお勧めですか?
0435デフォルトの名無しさん
2014/09/10(水) 20:27:32.05ID:fLkR7p900436デフォルトの名無しさん
2014/09/10(水) 21:31:00.47ID:RxfE0CVdclass ButtonEx : Button
{
bool pressed, hovered;
protected override void OnPaint( PaintEventArgs e )
{
e.Graphics.FillRectangle( pressed ? Brushes.Red : ( hovered ? Brushes.Pink : Brushes.Blue ), new Rectangle( 0, 0, this.Width, this.Height ) );
}
protected override void OnMouseDown( MouseEventArgs mevent )
{
pressed = true;
base.OnMouseDown( mevent );
}
protected override void OnMouseUp( MouseEventArgs mevent )
{
pressed = false;
base.OnMouseUp( mevent );
}
protected override void OnMouseEnter( EventArgs e )
{
hovered = true;
base.OnMouseEnter( e );
}
protected override void OnMouseLeave( EventArgs e )
{
hovered = false;
base.OnMouseLeave( e );
}
}
0437デフォルトの名無しさん
2014/09/10(水) 22:09:56.64ID:epLGeAASSQLiteに限らず
接続型と非接続型という大きな違いがあるのだが
>>430
ロジック上そのデータ構造が必要ならしょうがない。
usingエイリアスで Dictionary<string, string>に別名つければ多少分かりやすくなる
http://ufcpp.net/study/csharp/sp_namespace.html
明確な理由がないならパブリックフィールドはプロパティにしとけ
0438デフォルトの名無しさん
2014/09/10(水) 23:09:42.89ID:Vjdq7FSm中でそういうの使うのは勝手だが、そんなものをpublicで持ち回るのはやめろ
プロパティにすればいいとかいう問題ではない
必要な操作だけをメソッドで公開すればいい
0439デフォルトの名無しさん
2014/09/10(水) 23:13:05.66ID:4sCEstRkエスパーしてみるがDictionary<Tuple<string, string>, string>>が必要なんじゃないか?
0441デフォルトの名無しさん
2014/09/11(木) 00:11:57.33ID:HBxO88GU業務では客先都合があるから柔軟性のが大事
0442デフォルトの名無しさん
2014/09/11(木) 00:39:46.82ID:vleFyoUy0443デフォルトの名無しさん
2014/09/11(木) 01:23:50.55ID:HBxO88GU文盲乙
日本語できない在日は国に帰りなさい
0444デフォルトの名無しさん
2014/09/11(木) 01:25:17.81ID:fAutpztf0445デフォルトの名無しさん
2014/09/11(木) 01:28:27.69ID:HBxO88GU0446デフォルトの名無しさん
2014/09/11(木) 01:32:06.78ID:jelsmP7aいや循環参照の誘惑に駆られることは正直あることはある。
もちろん実際やったりしないけど。
0447デフォルトの名無しさん
2014/09/11(木) 01:37:05.95ID:qT2YKu7zBからAが呼び出したくなったら
コールバックを書けばよいだけなので
原理的に循環参照などということは起こらないのである
0448デフォルトの名無しさん
2014/09/11(木) 01:38:28.12ID:HBxO88GUそれに対応する柔軟性が必要
0449デフォルトの名無しさん
2014/09/11(木) 01:46:14.13ID:vleFyoUyそういうのはトラブルシュートの範疇だろ
0450デフォルトの名無しさん
2014/09/11(木) 06:10:03.07ID:jpjc/vED0451デフォルトの名無しさん
2014/09/11(木) 09:00:20.11ID:vFz0q7PTthis.
を付けるか付けないか迷うのですが、上級者の方はどうしていますか?
0452デフォルトの名無しさん
2014/09/11(木) 09:05:10.02ID:YmSSQYEF結果として付いてるというか。
this.と打つとでてくるインテリセンス使いまくりなので。
this.IsHoge みたいなプロパティがしっくりくるし。
あと m_ のようなな接頭辞が嫌いというのもある
0453デフォルトの名無しさん
2014/09/11(木) 12:00:10.42ID:2eUDjEIZ呼び出しっていうか、アセンブリで定義されてる型を参照したくなるようなケースが
稀にあるんだよ。
それを分割が下手だからだというのは簡単だけど、綺麗に分けることとコードの可読性が
トレードオフの関係になってしまうような場合がある。
0454デフォルトの名無しさん
2014/09/11(木) 12:24:41.05ID:p8xl46sFそもそも分割することを止めてモジュールを結合してしまうことに他ならない
そんな重大な判断をしていることを理解して循環参照やる奴はまずいない
0455デフォルトの名無しさん
2014/09/11(木) 17:42:52.05ID:MoOunUkv俺はつけてるよ
メンバ変数に_つけてるけどthisもつける
0456デフォルトの名無しさん
2014/09/11(木) 18:11:12.42ID:qT2YKu7zな・り・ま・せ・ん
アセンブリA、アセンブリBを両方参照してるユーザーの側で調節するべき話で
BにAを埋め込んだって混乱が加速するだけ
0457デフォルトの名無しさん
2014/09/11(木) 19:43:19.38ID:jpjc/vED0458デフォルトの名無しさん
2014/09/11(木) 20:00:11.20ID:fAutpztf不要なものは付けない派だわ
ほぼしないけど、引数やローカル変数とメンバがかぶった場合のみ付ける
付けてた頃もあったけど、メソッドに付けるのはくどい&付け忘れも出てくるのでやめた
0459デフォルトの名無しさん
2014/09/11(木) 20:04:02.96ID:fAutpztfジェネリック+インターフェースをうまいこと使ってればそんなケースはないはず
0460デフォルトの名無しさん
2014/09/11(木) 20:26:45.40ID:vFz0q7PTレスありがとうございました。
私の場合、thisを付けたり付けなかったりと、一貫性が無いので、良く混乱します。
メンバ変数には、 先頭に m_ とか _ を付ける記法があるのですか?
私は、メンバ変数もローカルな変数もそういう区別をしていないので、その点でも
混乱します。参考にさせて頂きます。
0461デフォルトの名無しさん
2014/09/11(木) 20:47:35.48ID:FYXirGQ9あるんだよそれが。何度も言うがごく稀にだけどね。
0462デフォルトの名無しさん
2014/09/11(木) 20:51:10.60ID:Jb+E9F2+でないと打ち首な
0463デフォルトの名無しさん
2014/09/11(木) 20:52:50.07ID:fAutpztf具体例挙げてくれよ
0464デフォルトの名無しさん
2014/09/11(木) 20:55:03.33ID:FYXirGQ9そんなレベルの話をする奴とじゃ会話がかみ合わないよそりゃ。
0465デフォルトの名無しさん
2014/09/11(木) 20:59:25.90ID:Jb+E9F2+0466デフォルトの名無しさん
2014/09/11(木) 21:00:45.01ID:fAutpztf0467デフォルトの名無しさん
2014/09/11(木) 21:01:54.77ID:jpjc/vED0468デフォルトの名無しさん
2014/09/11(木) 21:35:00.94ID:Xx5FAgYfThis is Hogeって合わない場合が出てきそうだな
>>460
他スコープの変数と被らないようにそういうネーミングにする流儀がある
わしは継承元のメンバ変数とかプロパティを参照する場合に付ける派
0469デフォルトの名無しさん
2014/09/11(木) 22:22:40.79ID:f08XHIWY汎用アルゴリズムとか以外に使うと全部裏目に出る
0470デフォルトの名無しさん
2014/09/11(木) 23:05:12.85ID:vleFyoUy0471デフォルトの名無しさん
2014/09/12(金) 01:01:57.34ID:avR4p+KMただし既にあるものを扱える必要はある
必要はないと言って見ないふりをする奴は三流コーダーであり未来はない
0472デフォルトの名無しさん
2014/09/12(金) 01:11:24.98ID:37/5+rHIしつこいなあ、もうスレの流れ変わってきてんだろ
いい加減スレの流れ読めよ
なんで真っ赤になってるのか知らないけど、
前任者が循環参照やらかしたプロジェクトの保守案件なんてのはそこそこある
そういう仕事が来たら始末はつけるし、それは >>449 でトラブルシュートだといってるだろ
おまえの中で循環参照が「必要」なら、勝手にやってればいいじゃん
0473デフォルトの名無しさん
2014/09/12(金) 01:17:15.06ID:avR4p+KM俺こういう物分り悪い奴苦手
トラブルシュートでやらなきゃダメならそれは必要な技術だろうがこの脳無し
0474デフォルトの名無しさん
2014/09/12(金) 01:19:42.57ID:Ny9x6EmVゴミ以下
前任者が循環参照してるなら少し手を入れて循環参照しなくすればよいだけの話
0475デフォルトの名無しさん
2014/09/12(金) 01:21:09.66ID:37/5+rHI必要なのは解決するための回避方法のノウハウでしょ・・・
あきれたもんだ
0476デフォルトの名無しさん
2014/09/12(金) 02:08:31.78ID:avR4p+KM世の中お前らの好き放題いじくり回せるコードばかりじゃねえんだよ
縛りに縛られた厳しい条件でも仕事をこなせる
それに見合う引き出しがある
それがプロだろうよ
やりたいことやったもんがちはプロじゃねえお遊びみたいなもんだ
自由度の高い案件なら学生バイトにでもやらせればいい
0477デフォルトの名無しさん
2014/09/12(金) 02:48:26.63ID:6x9vw7C5どのデータベースプロバイダを選びますか?
いろいろあり過ぎてわかりません
0478デフォルトの名無しさん
2014/09/12(金) 06:12:59.87ID:FNTCQHYT0479デフォルトの名無しさん
2014/09/12(金) 07:12:01.16ID:Ldex5YVR初心者スレでなにイキってんの僕?
0480デフォルトの名無しさん
2014/09/12(金) 08:08:58.63ID:vg+iK/Ru0481デフォルトの名無しさん
2014/09/12(金) 14:55:21.70ID:Ny9x6EmV0482デフォルトの名無しさん
2014/09/12(金) 14:59:01.10ID:HR1YVjpK某案件であったけど、VSのリファクタリングコマンドがNGで実績のあるソースコードのコピペがOKってアホかよと・・・
0483デフォルトの名無しさん
2014/09/12(金) 19:51:00.46ID:Wjkd757i0484デフォルトの名無しさん
2014/09/12(金) 19:52:29.48ID:nceQ+kAP0485デフォルトの名無しさん
2014/09/12(金) 20:04:13.12ID:We4wKH2pシャワーヘッドを外して微温湯を肛門から注入。
腹をパンパンにさせてから、ちょっと我慢タイム。
まずはフロの栓をする。
そしてもう一度パンツをはいて、限界を迎えたら、中に思いっきり出すんだ。
イチジク浣腸のウンコはあんまり臭くないけど、お湯浣腸のウンコはスゴイ匂い。
後ろからそっと手をあててパンツの膨みを愉しむ。茶色い汁が付いた左手の指の匂いを嗅いで、舌を付ける。ああ、俺ってイヤらしい人間だな。変態だな。
次にモモを閉じてオシッコ。脚の間を伝わり落ちる感触がいやらしい。
フロの栓を閉じてあるから足元に溜まるので、そこに座り込んでみる。正座。
パンツの中はウンコでドロドロ。
足がまたぐりに入り込む様に座るもんだから、パンツの中身が押し潰されてマエの方にまでやってくる。
もう堪らなくなってパンツの上からタマやサオを強くこすり付ける。
ウンコが回り込んでいるからチンポや金玉はウンコまみれになってくる。
ここでチンポを思いっきり握り締めて、一回ドライエクスタシー。女のコみたいな喘ぎ声が出ちゃう。
ここから立ち上がって塗便プレイ。
パンツからすくい出したウンコを、じぶんのエロいところ全てに塗りたくる。
最期は 乳首を捻りながら便槽と化したフロの壁にウンコまみれの肉棒から射精。
飛びが普段とは全然違う。回春。ゴメンね奥さん。俺は女よりウンコみたい。浮気はしないけど変態です。
全身ウンコまみれなので、ここから1時間はかけて洗浄。お風呂もウンコだらけ。
家じゃ絶対できないな。お湯もすごいたくさん使います。すみません。
汚れたパンツは袋に入れて、明日コンビニで捨てて行きます。
0486デフォルトの名無しさん
2014/09/12(金) 20:20:19.20ID:fLXqB3VXc#もサンプルプログラムって
公式のあるの?
0487デフォルトの名無しさん
2014/09/12(金) 21:05:06.25ID:PcDuBU9+データのやり取りをしたいのですが、やり方がわかりません
いろいろggっては見たのですがIPアドレスで接続する方法しか見当たらず
困っています。
誰かお願いします。
0488デフォルトの名無しさん
2014/09/12(金) 21:10:35.57ID:IBfP15Rf名前解決するならSystem.Net.Dnsクラス
0489デフォルトの名無しさん
2014/09/12(金) 22:33:08.32ID:Ny9x6EmVhttp://msdn.microsoft.com/ja-jp/library/windows/apps/xaml/hh781239.aspx
0490デフォルトの名無しさん
2014/09/13(土) 00:32:26.47ID:VE/fbqWKどのレベルのものを求めてるのか知らないけど
MSDN 見に行けばそれなりにあるぞ
0491デフォルトの名無しさん
2014/09/13(土) 02:29:17.18ID:WTMBOxF/System.Typeのように構造化されている奴があればより助かります
無ければ文字列形式で取得する奴でも構いません
0492デフォルトの名無しさん
2014/09/13(土) 06:52:03.98ID:DTDaEtudCOMのホスティングAPIを使って動かせばC++で取れるけど俺は投げた
0493デフォルトの名無しさん
2014/09/13(土) 13:07:39.86ID:t/yXuvcMなんでだろう
0494デフォルトの名無しさん
2014/09/13(土) 14:45:48.32ID:jXaxzlXL0495デフォルトの名無しさん
2014/09/13(土) 17:38:57.76ID:AnYtwD4Y0496デフォルトの名無しさん
2014/09/13(土) 18:43:00.76ID:aWf+S5wdIsNullOrEmpty
IsNullOrWhiteSpace
の判定はあるのに
IsNullOrEmptyOrWhiteSpace
は何故無いのでしょうか?
0497デフォルトの名無しさん
2014/09/13(土) 18:46:44.56ID:AnYtwD4Y0498デフォルトの名無しさん
2014/09/13(土) 18:55:02.92ID:aWf+S5wd即答ありがとうございます。
>なのだ
バカボンのパパかと思いました。
0499デフォルトの名無しさん
2014/09/14(日) 12:29:08.19ID:CRfFi/25┌──────────────┐
│ │
│ │
├──────────────┤
│ │
│ │
└──────────────┘
って、スプリッターを一番下まで動かしても
┌──────────────┐
│ │
│ │
├──────────────┤
└──────────────┘
下側の高さが完全には0にならずに、
20ピクセルくらいの高さがあるのですが、完全に0にして、
下側を見えないように出来ますか?
0500デフォルトの名無しさん
2014/09/14(日) 13:03:43.45ID:ga9p17hQ0501デフォルトの名無しさん
2014/09/14(日) 13:09:55.81ID:CRfFi/25ありがとうございました。
0502デフォルトの名無しさん
2014/09/14(日) 16:48:01.98ID:CRfFi/25List<bool> booList = new List<bool>(3) { true };
だと1個しか追加されません。
どうしたら良いでしょうか?
0503デフォルトの名無しさん
2014/09/14(日) 16:58:38.02ID:ga9p17hQ0504デフォルトの名無しさん
2014/09/14(日) 17:01:57.38ID:CRfFi/25レス有難うございます。
3を変数にしたい場合はどうすれば良いでしょうか?
0505デフォルトの名無しさん
2014/09/14(日) 17:03:17.31ID:ga9p17hQ0506デフォルトの名無しさん
2014/09/14(日) 17:15:29.57ID:B0PvUnRG使えねーな
0507デフォルトの名無しさん
2014/09/14(日) 17:16:44.66ID:oLWnP7Fy0508デフォルトの名無しさん
2014/09/14(日) 17:23:24.90ID:B0PvUnRG誰かの心の声です
0509デフォルトの名無しさん
2014/09/14(日) 17:53:47.49ID:CRfFi/25有難うございます。試してみます。
0510デフォルトの名無しさん
2014/09/14(日) 18:08:55.74ID:J6jLjc0Rhttp://hissi.org/read.php/tech/20140914/QjBQdlVuUkc.html
使えないのはあなたでは
0511デフォルトの名無しさん
2014/09/14(日) 19:16:05.93ID:gO6moQCP余所のスレで絡まれたのか?
0512デフォルトの名無しさん
2014/09/14(日) 19:26:32.03ID:vxhEjgUK0513デフォルトの名無しさん
2014/09/14(日) 19:35:33.58ID:zXPpZhan0514デフォルトの名無しさん
2014/09/14(日) 20:07:15.75ID:wAtxspDt繰り返し構文すら書かなくて良くなるみたいだな。ちと衝撃だった。
勉強してくる。
0515デフォルトの名無しさん
2014/09/14(日) 20:33:49.23ID:kn6kIRd50516デフォルトの名無しさん
2014/09/14(日) 20:54:26.30ID:gO6moQCPforはもう古い!みたいな
古いのはお前だっての
0517デフォルトの名無しさん
2014/09/14(日) 21:21:51.61ID:6imTz5mP遅延評価が欲しいって場合はlinqしかないけど
後、linqにはList.ForEachに該当するものはないので…
0518デフォルトの名無しさん
2014/09/14(日) 21:32:12.49ID:s+BV7Cb9ええ、宿題スレで年がら年中‥
0519デフォルトの名無しさん
2014/09/14(日) 21:55:44.45ID:poGH8heGbool型という値型しか使わないならこのまま何も気にせず
過ごせばいいの?
0520デフォルトの名無しさん
2014/09/14(日) 21:59:25.23ID:VxA609sk参照型なら毎回同じオブジェクトが返ってくる
値型なら勝手にコピーされるから気にしなくていい
0521デフォルトの名無しさん
2014/09/14(日) 22:01:35.82ID:ga9p17hQちなみに参照型だと全部同じインスタンスになる
Repeatは(Func<Result>, int)みたいなオーバーロード無いのな まあ無くても困らないけど
0522デフォルトの名無しさん
2014/09/14(日) 22:04:32.30ID:gCeTYvpe0523デフォルトの名無しさん
2014/09/14(日) 22:05:40.13ID:VxA609sk>(Func<Result>, int)
それ副作用使わない限り要素が全部同じになっちゃうでしょ
評価順にも依存するから並列化できないし
0524デフォルトの名無しさん
2014/09/14(日) 22:07:50.39ID:ga9p17hQうん?
Enumerable.Repeat(() => new Hoge(), 4).ToList()
みたいなの考えてたが
0525デフォルトの名無しさん
2014/09/14(日) 22:08:06.11ID:gCeTYvpe副作用?
0526デフォルトの名無しさん
2014/09/14(日) 22:15:22.79ID:VxA609skああすまんそれならいいんだ
yieldの代わりに使おうとしてるのかと思った
多分出てくるよそういう奴
0527デフォルトの名無しさん
2014/09/14(日) 22:16:10.20ID:kn6kIRd50528デフォルトの名無しさん
2014/09/14(日) 22:18:52.15ID:gCeTYvpeGenericsでnew()制約をつけるようなダサい展開に陥る
0529デフォルトの名無しさん
2014/09/14(日) 22:43:24.81ID:poGH8heGなんのことかって具体的に言われないと
何にどう気をつけるべきかって気が付かないよね
ttp://pic.twitter.com/AYGzXPnhsQ
0530デフォルトの名無しさん
2014/09/14(日) 22:55:36.67ID:gO6moQCPメッセージが「エラーが発生しました」で、
InnerExceptionがnullだったりすると、
例外投げた奴をぶち殺したくなるよね。
0531デフォルトの名無しさん
2014/09/14(日) 23:55:16.37ID:kn6kIRd50532デフォルトの名無しさん
2014/09/15(月) 02:43:47.19ID:QMxpmLzAまた、可能であれば押していただけないでしょうか。
わかりにくくてすいません。
ちなみにwindowsフォームです。
0533デフォルトの名無しさん
2014/09/15(月) 07:23:33.90ID:4DL/OwW5Google Maps APIでルート検索できなかったっけ?
↑でググれ
0534デフォルトの名無しさん
2014/09/15(月) 07:30:16.33ID:t+ySGZsQ国土基板情報か数値地図ひっぱってきてルート決めてGoogleMapに重ねるのが楽だろうけど
一方通行情報なかったりするから質の悪いものしかできないと思う。素直に諦めるのが吉
0535デフォルトの名無しさん
2014/09/15(月) 07:38:51.42ID:C2JAEt1Rいやそういう話じゃないだろ
0536デフォルトの名無しさん
2014/09/15(月) 07:45:32.81ID:Y1EnqdqW0537デフォルトの名無しさん
2014/09/15(月) 07:51:16.50ID:eCBLE3YBどう考えてもそんな手間掛けるより、Google Maps API使う方が楽でしょ。
Googleが提供するAPIに、おそらく座標を渡すだけで探索してくれるはずだから。
0538デフォルトの名無しさん
2014/09/15(月) 08:21:28.94ID:TSMTA8ybプライスレス
0539デフォルトの名無しさん
2014/09/15(月) 14:27:33.78ID:44b7eUon下のような書き方だと、abstractが有効でないみたいなエラーが出る。。
abstract class A
{
abstract public static int operator +(int x,int y);
}
class B : A
{
public static override int operator +(int x,int y)
{
return x+y;
}
}
0540デフォルトの名無しさん
2014/09/15(月) 14:39:39.98ID:jSabMZv+C# では static はオーバーライドできないはず
オーバーロードはできる
0541デフォルトの名無しさん
2014/09/15(月) 15:11:41.02ID:kemMomf40542デフォルトの名無しさん
2014/09/15(月) 15:27:23.65ID:44b7eUon0543デフォルトの名無しさん
2014/09/15(月) 23:21:16.22ID:QMxpmLzA調べた所wpfでの使い方は出るのですが...
0544デフォルトの名無しさん
2014/09/15(月) 23:45:15.78ID:TSMTA8yb0545デフォルトの名無しさん
2014/09/16(火) 06:11:28.71ID:Hlmzgx+s0546デフォルトの名無しさん
2014/09/16(火) 09:52:42.81ID:t/dIfNP/断片化されたパケットはどのように処理したらいいんでしょうか?
0547デフォルトの名無しさん
2014/09/16(火) 09:59:22.03ID:6s9b2H2cMemoryStreamにでもため込んどく?
0548デフォルトの名無しさん
2014/09/16(火) 11:11:05.39ID:t/dIfNP/断片化されてるパケットがそうでないパケットにまたがって送られてくる場合、
断片化されてるパケットかどうかはどこで判断したらいいんでしょうか?
0549デフォルトの名無しさん
2014/09/16(火) 11:24:26.54ID:leqJztNV0550デフォルトの名無しさん
2014/09/16(火) 11:25:56.32ID:6s9b2H2c0551デフォルトの名無しさん
2014/09/16(火) 11:41:57.14ID:t/dIfNP/パケットの中身眺めていろいろやってみる事にします。
0552デフォルトの名無しさん
2014/09/16(火) 11:51:31.74ID:dhQsu6oC0553デフォルトの名無しさん
2014/09/16(火) 12:46:59.09ID:aL5tuO4b例えば、
UserControl1を作り、こんな感じのレイアウトだとします。
┏━━━━┓
┃TextBox1┃
┃ ┃
┃Button1 ┃
┗━━━━┛
これと同じ機能を持つUserControl2を例えば
┏━━━━━━━━━━┓
┃TextBox1 Button1 ┃
┗━━━━━━━━━━┛
のように作りたい場合、つまり機能はUserControl1と同じで
レイアウトだけ違うので、UserControl1のButton1やTextBox1のイ
ベント処理関数などを、そのままUserControl2でも使いたいのですが、
単純にコピペすれば出来ますが、そうするとソースコードの同じものが
二か所にあることになり管理がややこしいので、一元管理できる良い方法ありますか?
クラスの継承とかを上手く使えばできますか?
0554デフォルトの名無しさん
2014/09/16(火) 12:53:22.35ID:+WoYNO3cそんな難しい話?
一番素直な解決法は、UserControl内部のコントロールのレイアウトをプロパティーで
設定できるようにするだけだと思いますが。
0555デフォルトの名無しさん
2014/09/16(火) 13:01:30.50ID:aL5tuO4bレス有難うございます。
なるほど、プロパティを使うというのは思いつきませんでした。
でも、例で上げたUserControl1や2は説明の為に簡略化したもので、
実際は、もっとたくさんのコントロールがあり、プロパティでレイアウト
を設定するのはちょっと無理があるかもしれません。
その場合、別の方法はありますか?
0556デフォルトの名無しさん
2014/09/16(火) 13:50:22.47ID:+WoYNO3cそれをUserControl1とUserControl2の共通のベースクラスにするのが普通かな。
0557デフォルトの名無しさん
2014/09/16(火) 13:53:12.28ID:HBMTClPE0558デフォルトの名無しさん
2014/09/16(火) 15:17:09.89ID:Cq8dtcSK0559デフォルトの名無しさん
2014/09/16(火) 15:57:48.25ID:klLrpZrVコントロールは継承しなくてもあらゆる部分が変更可能に作られているので
それに倣えばいい
0560デフォルトの名無しさん
2014/09/16(火) 16:09:27.79ID:dhQsu6oC0561デフォルトの名無しさん
2014/09/16(火) 16:44:36.46ID:HBMTClPESystem.Windows.Forms.Controlも継承しないんですか
0562デフォルトの名無しさん
2014/09/16(火) 17:10:21.16ID:klLrpZrVUserControlを頑張っていじればなんとかなるやろ
0563デフォルトの名無しさん
2014/09/16(火) 17:10:59.37ID:Hlmzgx+s0564デフォルトの名無しさん
2014/09/16(火) 18:29:50.90ID:Cq8dtcSKControl.SetStyle で行けるから詳しくはHelp見てね
0565デフォルトの名無しさん
2014/09/16(火) 18:31:07.11ID:dhQsu6oC百も承知です
そこprotected virtualなんですけど継承せずに変更したいんです
0566デフォルトの名無しさん
2014/09/16(火) 18:34:05.74ID:6s9b2H2cリフレクション使えば可能ではあるけどね
素直に派生させるのが良いよ
0567デフォルトの名無しさん
2014/09/16(火) 18:41:07.33ID:dhQsu6oCつまんねー
0568デフォルトの名無しさん
2014/09/16(火) 21:27:36.02ID:b/OJvsO1//DataObjectを作成する
DataObject dataObj = new DataObject(DataFormats.FileDrop, files);
//ドラッグを開始する
DragDropEffects dde =
lbx.DoDragDrop(dataObj, DragDropEffects.Copy);
上記のコードだとファイルしかドラッグできないんですが
ファイルと同時にListViewItemなども一緒にドラッグできないでしょうか?
listview.DoDragDrop(e.Item, DragDropEffects.Move);
も同時にしたいイメージです。
0569デフォルトの名無しさん
2014/09/16(火) 21:59:19.71ID:Pj5zgY6q0570デフォルトの名無しさん
2014/09/16(火) 22:21:03.37ID:b/OJvsO1できました。ありがとうございます!!
0571デフォルトの名無しさん
2014/09/17(水) 01:09:13.06ID:3H99yoe30572デフォルトの名無しさん
2014/09/17(水) 01:43:33.09ID:6hHMhfnT0573デフォルトの名無しさん
2014/09/18(木) 14:23:05.87ID:KR02GDAsそれをFormのProjectBで利用しているのですが、
そのUCに変更を加えた場合、リビルドしただけではProjectBに反映されないようなのですが、
Form上のUCを削除して、改めて追加すればうまく行ったのですが、削除せずに簡単に
UCの変更を反映させる方法はありますか?
0574デフォルトの名無しさん
2014/09/18(木) 14:34:29.78ID:BAIbXLCwプロジェクト参照してるならビルドして後はせいぜいデザイナ開き直すぐらいで事足りると思うが
0575デフォルトの名無しさん
2014/09/18(木) 14:59:19.19ID:KR02GDAsレスありがとうございました。
勘違いでした。
>ビルドして後はせいぜいデザイナ開き直すぐらい
で行けました。お騒がせしました。
0576デフォルトの名無しさん
2014/09/18(木) 16:43:22.90ID:KR02GDAs表示幅を自動調整してくれる機能がありますが、
OwnerDraw=Trueにして、完全に自前のコードで描画した場合、
この自動幅調整機能は、これも自分で実装する必要ありますか?
というのは、描画するのは自分だから、表示されている
アイテムの最大幅を知っているのは自分だけだと思うので。
0577デフォルトの名無しさん
2014/09/18(木) 23:18:08.29ID:/jffe+Paデータ保持用のObject配列を作りたいのですが、
要素が1から始まるObject配列は、
どのように作ったら良いのでしょうか?
下記のように普通に作ると、当然ながら0から始まるので、
難儀しております。
Object[,] func = new Object[10,10];
何か方法がありましたら、よろしくお願いします。
0578デフォルトの名無しさん
2014/09/18(木) 23:25:47.00ID:BHWk5UQT0579デフォルトの名無しさん
2014/09/19(金) 01:08:13.80ID:54sNaZYjそういうのはVB使ってOption Strict Offでやった方がいろいろ楽。
いや本当に。
そういうのVBなら普通にint[,]とかdouble[,]とかをRange.Valueにぶち込むだけ。
0580デフォルトの名無しさん
2014/09/19(金) 01:28:30.66ID:9JVRUaZQ0581デフォルトの名無しさん
2014/09/19(金) 04:59:37.60ID:tvyonBI10582デフォルトの名無しさん
2014/09/19(金) 06:11:28.25ID:xonljUnN0583デフォルトの名無しさん
2014/09/19(金) 18:03:16.37ID:3bxlVyYQ1からに気にしすぎ
初心者はなんか変なことがきになるなー
0584デフォルトの名無しさん
2014/09/19(金) 18:04:04.72ID:3bxlVyYQ-1か
0585デフォルトの名無しさん
2014/09/19(金) 18:26:23.30ID:97jwqaFXOpenXMLってR1C1指定出来ないんだよな・・・
変換メソッドぐらい用意してくれよと
0586デフォルトの名無しさん
2014/09/19(金) 21:27:40.64ID:BlDn+hZGVBは0か1か選べた気がするけど
0587デフォルトの名無しさん
2014/09/19(金) 22:01:04.55ID:JGF82wP80588デフォルトの名無しさん
2014/09/20(土) 00:43:09.37ID:McNzuLVl0589デフォルトの名無しさん
2014/09/20(土) 01:17:03.28ID:9YrESwfSVBは
Dim a(3 to 15) As Integer
とか0, 1以外にも出来たような覚えがある
あと、OptionBase 1で配列の最初の添え字のデフォルトを1に出来たと思う
0590デフォルトの名無しさん
2014/09/20(土) 03:40:15.29ID:+lOTgIi9Luaは1始まり
ただどちらかというとオブジェクトをキーとした辞書みたいな側面が強いから
配列と言っていいかは微妙
0591デフォルトの名無しさん
2014/09/20(土) 10:40:40.32ID:vCscccb4あんまりCOBOL触ったことなかったんで
ループの終了条件書くとき混乱したことあったな。
個人的には、pythonに慣れてしまったからListとforeachがあればそっち使いたい
0592デフォルトの名無しさん
2014/09/20(土) 10:57:09.47ID:3zOaoQI9FORTRAN, COBOL, PL/1 とか、いわゆる超古典的な言語は 1 始まりが多い
まあ、今時は FORTRAN でも下限が指定できるようになってるけど
0593デフォルトの名無しさん
2014/09/20(土) 11:08:18.85ID:BR7p7mnXCの入門書には注意書きみたいに書いてあった記憶
0594デフォルトの名無しさん
2014/09/20(土) 16:06:31.25ID:jWaZ47xu昔のPCインタプリタBasicが1から
0595デフォルトの名無しさん
2014/09/20(土) 23:32:45.44ID:fhk8qLhzその中のセルをダブルクリックすると、その行(Row)の値を引っ張って、
新しくフォームを開きたい。
ダブルクリックされた際のセルのRowを拾うにはどうすればいい?
いろいろサンプルみたけど、選択された、行とかの例が多い。
セルをダブルクリックするときは、基本、1行だけなはずです
0596デフォルトの名無しさん
2014/09/20(土) 23:50:12.33ID:A/TP/TTO渋谷にある東京みたいな感じ?
何が言いたいの?
0597デフォルトの名無しさん
2014/09/21(日) 00:15:14.79ID:tXV39T2S>いろいろサンプルみたけど、選択された、行とかの例が多い。
解決してるじゃん
0598デフォルトの名無しさん
2014/09/21(日) 00:33:04.85ID:39IvaLQcはい、なんとかできました。これから、子フォームに値を渡さないといけないのですが、
(その値を元に、SQLを飛ばして、戻ってきたレコードを子フォームに表示
値の渡しかたを調べています
0599デフォルトの名無しさん
2014/09/21(日) 00:41:52.45ID:EYp/w8pdこれを英語で言うとなんて表現するんでしょうかね
0600デフォルトの名無しさん
2014/09/21(日) 00:42:50.37ID:EYp/w8pd0601デフォルトの名無しさん
2014/09/21(日) 00:50:58.75ID:hzBq2+VL0602デフォルトの名無しさん
2014/09/21(日) 02:26:18.35ID:yycy/lUtMyButtonやMyTextBoxを作った場合、
変数cがこの中のどれかのコントロールだとして、
それが、baseに属するか、派生したものかプログラム的に区別する方法ありますか?
0603デフォルトの名無しさん
2014/09/21(日) 04:00:32.69ID:hzBq2+VL0604デフォルトの名無しさん
2014/09/21(日) 09:23:06.78ID:TDjHt+G+0605デフォルトの名無しさん
2014/09/21(日) 09:35:29.52ID:UHs24s50そんな判定が必要になることはまず無いだろうけども
0606デフォルトの名無しさん
2014/09/21(日) 10:57:39.95ID:al2mWjeZ0607デフォルトの名無しさん
2014/09/21(日) 10:59:56.69ID:VRgCno470608デフォルトの名無しさん
2014/09/21(日) 11:21:28.59ID:gc4W2ztN0609デフォルトの名無しさん
2014/09/21(日) 11:25:55.45ID:KjRwYpk6これより大きい値を設定すると怒られるし。
0610デフォルトの名無しさん
2014/09/21(日) 12:08:17.68ID:C5X6MdOG持て囃されなくても向いてる分野には使われているのか
それとも他の何かに取って代わられたの?
0611sage
2014/09/21(日) 13:07:53.49ID:JsmbkY0jwhere DIC : Dictionary<int, string>, new()
{
public T Get(){}
}
上記のようなジェネリクスを
下記のような使い方をしたい。
public class hogebase<Dictyonary<int,string>>{
public T Get(){}
}
hogebaseを継承したりすれば実現できるが、
そのクラス内でTの型を固定したいです。
Dictionaryしか戻り値で返さないので、
いちいち長ったらしい型を指定するのが面倒という理由からです。
0612デフォルトの名無しさん
2014/09/21(日) 13:09:33.13ID:/BXu7UWC0613sage
2014/09/21(日) 13:22:06.76ID:JsmbkY0jありがとうございます!
0614デフォルトの名無しさん
2014/09/21(日) 13:58:15.63ID:K+3+g8yVジェネリクスを使う意味があるようには見えんな
0615sage
2014/09/21(日) 16:47:32.35ID:JsmbkY0jプロトタイプなため
Dictonary<int,string>が変更される可能性があり、
一箇所で管理しておきたいのですが意味ないですか?
0616デフォルトの名無しさん
2014/09/21(日) 16:58:11.94ID:d2MIJilJ0617デフォルトの名無しさん
2014/09/21(日) 19:30:37.00ID:bd2ZhPkS0618デフォルトの名無しさん
2014/09/21(日) 20:00:06.09ID:K+3+g8yVジェネリクスにしたらしたで使う時面倒だからな
0619デフォルトの名無しさん
2014/09/21(日) 23:30:52.22ID:NRylaSk20620デフォルトの名無しさん
2014/09/22(月) 00:38:07.25ID:JTWE33kg0621デフォルトの名無しさん
2014/09/22(月) 00:42:51.30ID:7V2OgHvP0622デフォルトの名無しさん
2014/09/22(月) 00:56:07.79ID:6dCQzrTtPSMでいいんじゃね
0623デフォルトの名無しさん
2014/09/22(月) 01:48:33.31ID:1cv2q/fA0624デフォルトの名無しさん
2014/09/22(月) 02:48:14.16ID:cQyRHW/4Formの上にButtonを置いて、コピーしたら、同じButtonというのが出来ました。
表示されたXMLみたいなやつを見ると、2つのButtonには
Nameみたいな属性がなく
区別出来ません。一体どうなっているのでしょうか?
0625デフォルトの名無しさん
2014/09/22(月) 05:43:12.32ID:hkj/60lJ0626デフォルトの名無しさん
2014/09/22(月) 12:14:22.73ID:2AemyjMMName属性自体は存在するから自分で名前を付けたらいい
0627デフォルトの名無しさん
2014/09/22(月) 18:51:54.82ID:L7WJWaOWみんなが書いてるように
基本、プログラム側から値をセットする方法ではやらないのでデフォじゃつかないだけ
ボタン(View)側でどの値を使うかを決めるので名前は必要ない
名前つけてプログラム側から名前.Content="ほげ";とか従来の方法でやることもできる
別に好きな方でやればいい
Bindingの方が便利だけど
0628質問�@
2014/09/22(月) 23:39:51.46ID:msg0XkePInternet Explorer は動作を停止しました
問題が発生したため、プログラムが正しく動作しなくなりました。
プログラムは閉じられ、解決策がある場合は Windows から通知されます。
【デバッグ(D)】 【プログラムの終了(C)】
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
というダイアログが表示された場合に【プログラムの終了(C)】を
Windows APIを使ってクリックしようと次のコードを記述しましたが
うまくクリック出来ません。
気になるのは、Spy++で確認したところ CtrlNotifySink が複数ありました。
複数あるにも関わらず最初のウィンドウハンドルが取得されているのがうまく動かない
原因の様なのですが、【プログラムの終了(C)】のウィンドウハンドルを取得するには
どうすればよいでしょうか?
0629質問�A
2014/09/22(月) 23:41:07.52ID:msg0XkePIntPtr h_2 = FindWindowEx(h, IntPtr.Zero, "DirectUIHWND", "");
IntPtr h_3 = FindWindowEx(h_2, IntPtr.Zero, "CtrlNotifySink", "");
IntPtr h_4 = FindWindowEx(h_3, IntPtr.Zero, "Button", "プログラムの終了(&C)");
PostMessage(h_4, BM_CLICK, 0, 0);
h_3 ではウィンドウハンドルが取得出来ています。
h_4 が 0 になってしまいます。
0630デフォルトの名無しさん
2014/09/22(月) 23:42:45.16ID:udgTuvtSDirectUIHWNDは普通じゃクリックできない
UIAutomation使いなさい
0631628
2014/09/22(月) 23:52:52.05ID:msg0XkePUIAutomatoinとか使った事がなくいまいち使い方が分かりません。。。
今回の場合どういうコードを記述すれば
クリック出来ますでしょうか?
0632デフォルトの名無しさん
2014/09/22(月) 23:55:52.30ID:udgTuvtSぐぐったらいくらでも出てくるだろうが
使い方なんてFindWindowと似たようなもんだ
0633628
2014/09/23(火) 00:15:28.67ID:e1n3LOVespy++で直接ウィンドウハンドルを見つけて以下のコードを実行したら
閉じることが出来ました。
しかしどうすれば >>629 の様なコードで
対象とするボタンのウィンドウハンドルを取得する事が出来るのでしょうか?
IntPtr h_4 = (IntPtr)2949584;
PostMessage(h_4, BM_CLICK, 0, 0);
0634628
2014/09/23(火) 00:18:54.40ID:e1n3LOVeUIAutomationなんて使う必要ねーじゃねーか。あほ
0635デフォルトの名無しさん
2014/09/23(火) 01:06:38.43ID:DwqQKKAS0636デフォルトの名無しさん
2014/09/23(火) 04:18:27.61ID:ltaCO/GF0637デフォルトの名無しさん
2014/09/23(火) 04:58:15.12ID:iJsbH00fレス有難うございました。
その後、いろいろ試して、何となくWPFの良さが分ってきました。
ダイアログウインドウを作りたいのですが、最大化、最小化ボタンを取り除くには、
http://stackoverflow.com/questions/339620/how-do-i-remove-minimize-and-maximize-from-a-resizable-window-in-wpf
にあるように、WinAPIを使わなくてはならないそうですが、どうしてダイアログみたいな簡単なものを作るのに
WinAPIを呼び出さなくてはならないのか分りません。
WPFの標準的な機能にダイアログは無いのですか?
0638デフォルトの名無しさん
2014/09/23(火) 07:03:58.49ID:l1+i9wNlまあそんなダイアログの具体的構造なんて知らんから自分で考えるしかないけど
>>637
WindowのResizeModeでいける
0639デフォルトの名無しさん
2014/09/23(火) 11:43:05.13ID:OrJ3Yw6Lここはお前のようなカス野郎が来る場所じゃないよ。
他でくだまいてろよ、IT土方野郎
0640デフォルトの名無しさん
2014/09/23(火) 11:46:09.03ID:iJsbH00f>WindowのResizeModeでいける
出来ました。ありがとうございました。
0641デフォルトの名無しさん
2014/09/23(火) 12:02:56.84ID:K+CMMeAD意味ないよね
0642デフォルトの名無しさん
2014/09/23(火) 12:57:21.05ID:VrWSLpXSStringBuilderに追加するときに特定の文字列だけ色変更ってできないんでしょうか?
0643デフォルトの名無しさん
2014/09/23(火) 13:02:38.03ID:h9MTRV8POSはLinux系でコンソールプログラムという前提で質問を解釈してもよいんですかね?
0644デフォルトの名無しさん
2014/09/23(火) 13:06:20.27ID:u3yps4pHいくつかのプロパティに値を代入して、順序通りにメソッドを呼び出す必要があります
具体的にはSlimDXでデバイスやエフェクトなどの初期設定をしたいんですが
手順が多すぎて毎回大変なので、ラッパークラス?っていうんでしょうか
そういうものを作ろうとしています
0645デフォルトの名無しさん
2014/09/23(火) 13:08:03.68ID:h9MTRV8P0646デフォルトの名無しさん
2014/09/23(火) 13:42:39.51ID:JF+1rKjgStringBuilderに追加された文字列に色とか匂いとかはありません。
そもそも文字列には色とか匂いとか髪型とかスリーサイズというものはありません。
0647デフォルトの名無しさん
2014/09/23(火) 20:08:44.48ID:bSMqpFUc240x240にサムネイル化してListViewに登録してるんだけど、
DrawImageが遅すぎる。
なんとかして早く出来ないかな?
0648デフォルトの名無しさん
2014/09/23(火) 20:17:27.73ID:lesh2qHuあとまさかでかい画像そのまま持ってDrawImageするときに縮小とかやってないよね
0649デフォルトの名無しさん
2014/09/23(火) 20:22:48.85ID:cho2LlEf0650デフォルトの名無しさん
2014/09/23(火) 20:25:57.89ID:l1+i9wNl0651デフォルトの名無しさん
2014/09/23(火) 20:42:01.01ID:bSMqpFUcいや、ListViewに登録する時にDrawImageでスケーリング(縮小)してる。
だから、240x240にリサイズされた画像が表示の時には使用されてる。
この登録時のスケーリングが、全部の画像の合計で10秒くらい掛かるんだよね。
0652デフォルトの名無しさん
2014/09/23(火) 21:22:02.84ID:rUKhUo34ニアレストネイバーなら速くて簡単だろ
0653デフォルトの名無しさん
2014/09/23(火) 21:43:22.54ID:8A+9zxKc0654デフォルトの名無しさん
2014/09/23(火) 22:15:29.94ID:21PmSReP0655デフォルトの名無しさん
2014/09/23(火) 22:35:14.32ID:lesh2qHu>>651
ListViewじゃなくてImageListっしょー
ダミー登録しておいて別スレッドでロードしてリサイズ完了次第順次差し替えるとか
ロード&リサイズの高速化なんて限界があるんだから他の方策を考えんと
0656デフォルトの名無しさん
2014/09/23(火) 23:35:03.12ID:bMKLIDDb実処理時間が10秒とかあり得ないし
0657デフォルトの名無しさん
2014/09/24(水) 02:07:06.95ID:y0BX9PM1馬鹿。
嘘いってんじゃねーよ!
0658デフォルトの名無しさん
2014/09/24(水) 02:41:29.93ID:5Eo1+QTl正確にはListViewのLargeImageListに登録したImageListですね。
別スレッドか、そういう方法もありか。
>>656
ListViewのBeginUpdate/EndUpdate、SuspendLayout/ResumeLayoutは使用してるんだけどね。
0659デフォルトの名無しさん
2014/09/24(水) 12:05:00.78ID:D8HkcSxM0660デフォルトの名無しさん
2014/09/24(水) 16:01:58.08ID:x+4QYqZMSystem.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = "wscript.exe"
p.StartInfo.Arguments = VBscriptファイル;
で VBscriptファイルを実行しているのですが、
たとえば、予めそのファイルの中身をC#の文字列か何かに埋め込んで置いて、
その文字列の中身のVBScriptを実行することは出来ますか?
つまり、ファイルを使わずに実行したいのです。
0661デフォルトの名無しさん
2014/09/24(水) 16:32:39.14ID:LzDgpqDMAddCodeしてRunしたり
ExecuteStatementしたりする
0662デフォルトの名無しさん
2014/09/24(水) 19:17:31.28ID:x+4QYqZMレスありがとうございました。
教えてもらった情報でググッて、どうにか出来そうな感じです。
VBScriptファイルの中身を文字列textに入れて
AddCode(text)を実行したら、Runしなくてもスクリプトが起動したのですが、
これは問題ないのかな。とにかくスクリプトが起動したので良いのですが。
0663デフォルトの名無しさん
2014/09/24(水) 23:58:18.34ID:YpeFfPDpこういうことやっちゃうのはお作法的によくないの?
一応コンパイルは通るけど
プロパティ便利だから使いたいけど公開はしたくないんだよね
0664デフォルトの名無しさん
2014/09/25(木) 00:11:37.42ID:HkHpnDDM別に普通ですよ
0665デフォルトの名無しさん
2014/09/25(木) 00:28:25.11ID:KQHBkyT40666デフォルトの名無しさん
2014/09/25(木) 00:33:10.29ID:Kmfky3BEローカル変数は小文字 ヒープ変数は大文字にしたいんだよ
そこに一番重要な意味の切れ目があるから
フィールドとプロパティの違いなんかほとんど何の意味もないしな
だから一番最初の命名規則が間違ってた
0667デフォルトの名無しさん
2014/09/25(木) 05:18:12.06ID:HwpZrCil0668デフォルトの名無しさん
2014/09/25(木) 06:16:08.15ID:BRBG9Rns0669デフォルトの名無しさん
2014/09/25(木) 07:11:47.83ID:3iFR/Phvが有る時に、一定の長さに分割した文字列配列に変換したいのですが、
linqか何か使って、一行で出来ますか?
string[] strArray =
{
"very long string AA",
"AAASDFDLKSDFSFDFSDF",
"SDHKJSDAKLFAHKJFSDA",
"HKLFSDAF"
};
0670デフォルトの名無しさん
2014/09/25(木) 07:26:12.96ID:GxZO89hxfrom x in strLong.Select((e, i) => new { Item = e, Index = i })
group x by x.Index / 19 into g
orderby g.Key
select new string(g.ToArray())
0671デフォルトの名無しさん
2014/09/25(木) 07:30:57.39ID:9U52fPpVEnumerable.Range(0, (src.Length + len - 1) / len).Select(i => i * len).Select(i => src.Length >= (i + len)? src.Substring(i, len) : src.Substring(i))
うーむ馬鹿馬鹿しい
0672デフォルトの名無しさん
2014/09/25(木) 07:34:05.58ID:GxZO89hx訂正
group x.Item by〜
0673デフォルトの名無しさん
2014/09/25(木) 07:45:11.56ID:3iFR/Phvありがとうございます。出来ました。
皆さん、物凄く頭いいですね。こんな式、私には書けません。
0674デフォルトの名無しさん
2014/09/25(木) 08:56:54.40ID:Zjy5adUKただの馬鹿が、初心者を詰って遊んでるだけのスレだからね。
三流エンジニアってそういう奴ばかり
0675デフォルトの名無しさん
2014/09/25(木) 16:38:22.82ID:Rh+pu+kgds.ReadXml(XmlReader.Create(new StringReader(xmltext)));
ds.Tables;
ds.Tables[1]
ds.Tables[2]
.
.
とノードのデータ自動的に入れてデータテーブルを作成してくれます。
ノードがn個あれば、n個のテーブルを作成します。
但しデータにより、ノード数が増減します。
ここで、自分でノード名を指定して、
そのノードの、データテーブルを作成させることはできます。
0676デフォルトの名無しさん
2014/09/25(木) 18:36:40.52ID:3iFR/PhvRelease/Debugや AnyCpu/x86/x64 などの現在の設定を示す文字列を
取得してプログラム中の文字列として使う事は可能でしょうか?
0677デフォルトの名無しさん
2014/09/25(木) 18:44:50.94ID:sq6Mgyu/プロジェクトの設定次第では可能
で、そんな情報何に使うんだ?
0678デフォルトの名無しさん
2014/09/25(木) 20:17:39.71ID:3iFR/Phv>>677
>プロジェクトの設定次第では可能
具体的にどうすればよいのでしょうか?
>で、そんな情報何に使うんだ?
フォルダが以下のようになっているとして、デバッグの時に 自分.exe を実行するときに、
Proj1/x86/Debug/bin/他人.exe
Proj2/x86/Debug/bin/自分.exe
別のフォルダにある他人.exeを、ある別のフォルダにコピーしたいのです。
0679デフォルトの名無しさん
2014/09/25(木) 20:39:39.72ID:jMkf7TE/コピー
#else
#endif
0680デフォルトの名無しさん
2014/09/25(木) 20:57:23.44ID:/5ngibgN「ビルドイベント」タブ → 「ビルド前に実行するコマンドライン」の下 → 「ビルド前の編集」ボタン → 「マクロ >>」ボタン
見てみれば参考になるんじゃね
0681デフォルトの名無しさん
2014/09/26(金) 00:02:53.94ID:5O3kXax8イメージ的には、https://www.youtube.com/watch?v=eSlz_2Q1HAI
こんな感じ
どこかに良いサンプルソースないでしょうか?
0682デフォルトの名無しさん
2014/09/26(金) 09:26:40.60ID:0C5jJAcTdataGridView1.DataSource = source;
// フィルターする
dataGridView1.DataSource = source.Where( t => /*フィルターするコード*/ ).ToList();
// 戻す
dataGridView1.DataSource = source;
0683デフォルトの名無しさん
2014/09/26(金) 09:28:52.00ID:2Yf6l1S1Thanks!!
0684デフォルトの名無しさん
2014/09/26(金) 18:17:48.27ID:4AqyRFBwなにこれ
0685デフォルトの名無しさん
2014/09/26(金) 18:52:47.87ID:nHgoQ0oJラムダ式
0686デフォルトの名無しさん
2014/09/26(金) 21:55:13.66ID:8ok+NtRyhttp://www.atmarkit.co.jp/ait/articles/1409/26/news109.html
0687デフォルトの名無しさん
2014/09/26(金) 21:59:22.79ID:1YX4HMxCなんだこの役立たない記事。実情把握してなさそうだな
0688デフォルトの名無しさん
2014/09/26(金) 22:03:50.20ID:IN0UADRNMSのフォーラムの役に立たなさは異常
0689デフォルトの名無しさん
2014/09/26(金) 22:11:24.15ID:JX/CLN+N0690デフォルトの名無しさん
2014/09/27(土) 00:07:30.34ID:sN5kH76Y戻り値が絶対に必要な初期化処理をするメソッドなのでコンストラクタでは処理できません
0691デフォルトの名無しさん
2014/09/27(土) 00:13:41.23ID:z3mF+ujQ消極的な方法だが、フラグを置いて、他のメソッド全部にはそれをみてフラグがオフなら例外を投げるようにしておく、ってのはどうだろう?
0692デフォルトの名無しさん
2014/09/27(土) 00:15:47.23ID:44nIyQcfコンストラクタでそのメソッドを呼ぶ
戻り値はプロパティに設定する
0693デフォルトの名無しさん
2014/09/27(土) 00:41:50.14ID:sN5kH76Yそれだと実行するまでわからないですよね
でもこの方法しかないかも?
>>692
今度はプロパティを強制的に取得させる方法が必要になりますね
それに取得するのはどのタイミングでもいいわけじゃないので
0694デフォルトの名無しさん
2014/09/27(土) 00:51:25.95ID:sKt0Rrir全部のメソッド内の最初で呼んで
呼び出し済みならスルーすれば
シングルトンの実装みたいな感じで
0695デフォルトの名無しさん
2014/09/27(土) 00:54:44.12ID:EFwDHTWX何か勘違いしてるとしか
0696デフォルトの名無しさん
2014/09/27(土) 01:05:14.04ID:sN5kH76Yクラスを利用する側が知る必要があります
>>695
コアクラスなのでここで初期化失敗したらアプリを終了してくださいねって知らせたいのです
インターフェースはクラス内の実装を強制するものだけど
クラスを利用する側にも強制力を持つ何かしらの機構があったらいいんだけどなー
Aインターフェースを継承したクラスはBインターフェースを継承したクラスしか利用できないみたいな
そうすればメソッドの利用を強制できるのに
ファクトリメソッドで初期化失敗したらnullを返すみたいなやりかたしか思いつかない
これも実行するまでわからないんだけど・・・一番マシかなー?
0697デフォルトの名無しさん
2014/09/27(土) 01:11:05.50ID:IjUMB1jY0698デフォルトの名無しさん
2014/09/27(土) 01:15:56.72ID:VNfSjhXW呼び出した側でその値を捨てたら意味が無いわけで
そんな事を強制する意味があるとは思えん
クラスの生成と初期化の呼び出し、初期化の成功判定を行ってそのクラス返すメソッド作れ
0699デフォルトの名無しさん
2014/09/27(土) 01:18:21.60ID:VNfSjhXWコンストラクタで例外なげるなって作法があるんだよ
0700デフォルトの名無しさん
2014/09/27(土) 01:25:30.59ID:sN5kH76Yそれだと利用する側は生成時にtryで囲むことを強制するために示唆する手段が必要ですよね?
>>698
やっぱりファクトリクラスを作るしかないですよね
0701デフォルトの名無しさん
2014/09/27(土) 01:28:26.04ID:z3mF+ujQ0702デフォルトの名無しさん
2014/09/27(土) 02:17:04.20ID:sJ6HWCQYコンストラクタは非publicにしてstaticメソッドでインスタンス作れば済む。
やっぱり質問者が何を悩んでるのかさっぱり分からん。
0703デフォルトの名無しさん
2014/09/27(土) 06:06:57.03ID:2YkqVza8それはお前みたいな低能向けの作法
0704デフォルトの名無しさん
2014/09/27(土) 06:26:36.74ID:2Ze3kKMgまあ実際メモリリークの原因になりやすいのは確かだし、
C#でもDisposeを実装したクラスなんかだと、必要な解放処理を行う前に
コンストラクタで例外投げてしまえばC++の場合と同種の問題が起こるけどね
0705デフォルトの名無しさん
2014/09/27(土) 06:29:16.87ID:2Ze3kKMg訂正
コンストラクタで例外投げるとメモリリークするというC++の迷信から生まれた作法だね
の間違い
0706デフォルトの名無しさん
2014/09/27(土) 10:54:34.66ID:pw5stF+mttp://i.imgur.com/MA0ftn1.png
↑こんな風にマウスホバー時のエフェクトとか、
クリック時の色とかどうやって再現したら良いのかわかりません。
uxtheme.dll とか dwmapi.dll あたりを使うっぽいことまでは
調べてたらわかったんですが、
ttp://stackoverflow.com/questions/6480210/how-to-use-aero-glass-glow-effect-for-non-text
↑この辺みても回答がないので、
ご存じの方がいらしたら教えてください。
0707デフォルトの名無しさん
2014/09/27(土) 10:56:10.48ID:C7/aqWr7Formsは知らん
0708デフォルトの名無しさん
2014/09/27(土) 13:48:34.38ID:60uQGm97無効の場合は知らん
0709デフォルトの名無しさん
2014/09/28(日) 01:56:57.07ID:ihbatZ6rusingいちいち書くのめんどくさくねえか?
なんでデフォルトをGCにしたんだろうな
循環するパターン以外にメリットないじゃん
なんかいいアイデアないか?
0710デフォルトの名無しさん
2014/09/28(日) 02:26:23.87ID:LodDMuDaメソッドの戻り値にできなくなったりしないの?
0711デフォルトの名無しさん
2014/09/28(日) 03:25:24.44ID:SiKgDQdTそれはもともと推奨されてはいないからだろ
0712デフォルトの名無しさん
2014/09/28(日) 08:43:30.14ID:zX0vIkGpUsingHoge(hoge => {
hoge.HogeHoge();
});
アンマネージリソースはなるべくこういうAPIで扱えるようにしておいて、
利用側にusingを明示的に使わせないようにするとスマート
0713デフォルトの名無しさん
2014/09/28(日) 09:06:08.98ID:SuB5FCMeリソースのオープン、クローズはどこでする?
0714デフォルトの名無しさん
2014/09/28(日) 09:11:06.49ID:zX0vIkGpUsingHoge側でusing使うんだよ
0715デフォルトの名無しさん
2014/09/28(日) 09:25:45.54ID:SuB5FCMeしかし、オープンからクローズまでの各種処理をバラで扱えて、
usingも隠蔽する方法があればいいんだが。
0716デフォルトの名無しさん
2014/09/28(日) 21:40:23.51ID:myWmft5tVisual2013Professional 購入を考えています。
プロは使ったことないのですが、どのあたりが一番違うのでしょうか
私が現在困っているのは、
・パッケージ化のとき、msiにできない *これが一番大きい
・レポートが簡単に作成できない
他に、よく使う機能で、なにか致命的に違うところありますか?
0717デフォルトの名無しさん
2014/09/28(日) 21:44:31.34ID:XvTEDtHL0718デフォルトの名無しさん
2014/09/28(日) 22:01:23.55ID:XrK0HGYiそのような関数はありますか?
もしなければどのようにすれば実現できますか?
Visual Studio Express2013のWindows Formを使っています
0719デフォルトの名無しさん
2014/09/28(日) 23:18:23.53ID:4VbBw7JL・DLLプロジェクトとWebプロジェクトなど
Expressが別に用意されてるやつが
同一ソリューションに混在できない
・プラグインが使えない
とか
0720デフォルトの名無しさん
2014/09/28(日) 23:37:47.20ID:mSKe5dpEtreeView.Nodes.Findだとだめだよな・・・
自分で全Node見ていくしかないんじゃね
見つけたらtreeView.SelectedNodeに入れてやってfocus
0721デフォルトの名無しさん
2014/09/29(月) 00:05:07.00ID:qys/q/RJVisual StudioはUltimate意外はカスだからUltimate買ったほうがいいよ
0722716
2014/09/29(月) 22:39:34.90ID:MGWneuYgどれも規模が大きい開発で使いそうですね
私の環境だと、あくまで小規模なので、どれもいまいちピンときません。
使って無い機能です。
でもアルティメートだと個人では金額的に買えませんね。
DLLプロジェクトって、C++とかの話でしょうか?
0723デフォルトの名無しさん
2014/09/30(火) 00:08:46.75ID:UwnALeYjWebとバッチ処理、GUIフォームで
DB接続管理、定数管理、便利関数を使い回したいとか
プラグインはたとえばSVNとか
2013はGIT対応したけれども小規模ならまだSVNのほうが使いやすいかも
あとコード分析っEXPRESSにあったっけ?
0724デフォルトの名無しさん
2014/09/30(火) 00:31:12.24ID:n2CqrkFqぜんぶのノードのテキストを読み込んでIndexOfでやりました
意外と少ない行で収まったのでよかった
0725デフォルトの名無しさん
2014/09/30(火) 01:07:37.29ID:1InWWpxEコードを自動ソートしてくれるようなアドインが使えない
不満っていったらこれぐらいだなー
0726デフォルトの名無しさん
2014/09/30(火) 08:08:58.95ID:Q/bq5bOqMySQL使えない
0728デフォルトの名無しさん
2014/09/30(火) 21:36:01.88ID:2TWN+lyf0729デフォルトの名無しさん
2014/09/30(火) 21:42:17.04ID:TrQNGngF0730デフォルトの名無しさん
2014/09/30(火) 21:55:55.58ID:qpIGxrw70731デフォルトの名無しさん
2014/09/30(火) 22:11:35.11ID:75GPQvwIでも、配列のインデックスはint型で、int.MaxValue = 2GB - 1 だから実質2GBの配列って宣言不可能?
0732デフォルトの名無しさん
2014/09/30(火) 22:18:52.97ID:enG7bkWb0733デフォルトの名無しさん
2014/09/30(火) 22:26:33.11ID:qpIGxrw70734デフォルトの名無しさん
2014/09/30(火) 22:35:40.47ID:itWl9ssfbyte[]なら2G個だしint[]なら0.5G個
それを10個確保することはできるんだが
0735デフォルトの名無しさん
2014/09/30(火) 22:53:13.54ID:75GPQvwI配列の宣言でint.MaxValue+1を使えなきゃ2GB確保できなくね?
var array = new int[int.MaxValue];
だと2GB-1個なわけだし
0736デフォルトの名無しさん
2014/09/30(火) 23:00:53.07ID:75GPQvwI配列の最大長の他にオブジェクト1個の制限にも2GBがあるのな
0737デフォルトの名無しさん
2014/09/30(火) 23:27:24.10ID:2xIMsJb6ライセンス気にするなら MySQL は色々ややこしいから、PostgreSQL の方がいいや
0738デフォルトの名無しさん
2014/09/30(火) 23:28:44.59ID:y2Aa6mddListBox1.IsEnabled = !ListBox1.IsEnabled;
という記述を見たのですが、
!はどういう意味なのでしょうか?
皆目見当もつきません。
0739デフォルトの名無しさん
2014/09/30(火) 23:30:37.04ID:fHAbPVyL0740デフォルトの名無しさん
2014/09/30(火) 23:34:28.78ID:itWl9ssfttp://msdn.microsoft.com/ja-jp/library/f2kd6eb2.aspx
0741デフォルトの名無しさん
2014/09/30(火) 23:35:22.47ID:p4Jys04g>>738
! 演算子 (C# リファレンス)
http://msdn.microsoft.com/ja-jp/library/f2kd6eb2.aspx
0742デフォルトの名無しさん
2014/10/01(水) 00:13:02.10ID:e3lccIk+ListBox1.IsEnabled ^= false;
を使うんだがどっちのが正しいんだ
0743デフォルトの名無しさん
2014/10/01(水) 00:41:10.09ID:yKyMekZCfalseじゃなくてtrueじゃね?
0744デフォルトの名無しさん
2014/10/01(水) 00:45:52.80ID:gepRxEaK基本クラスを継承したサブクラスを用意するまではわかるけど
使い方がわからない
public void Print(Factory subFac)
{
this.factory=subFac;
factory.Print();
}
こんな感じ?
これなら直接サブクラスを利用したほうがよくない?
public void Print()
{
subFac.Print();
}
でよくない?
よくわからない
0745デフォルトの名無しさん
2014/10/01(水) 01:25:21.63ID:8RBgwhnR拡張メソッド使ってトグルするメソッドを追加するのが正解。
0746デフォルトの名無しさん
2014/10/01(水) 01:49:00.38ID:a/0Pjuckわからないならまだ必要じゃないってこと
0747デフォルトの名無しさん
2014/10/01(水) 05:16:12.75ID:Y9kqsxXtListBox1.IsEnabled != ListBox1.IsEnabled;
これでいけない?
0748デフォルトの名無しさん
2014/10/01(水) 05:25:23.26ID:Y9kqsxXtlistBox1.Enabled = !listBox1.Enabled;
こうだ
0749デフォルトの名無しさん
2014/10/01(水) 05:30:41.82ID:Y9kqsxXt寝起きとVB.netプロジェクトをC#へ変換作業で型のゆるさとENDだSUBだで
疲れててたので流れ見てなかった
>>742
それはあまりしないほうがいいだろ
状態を反転したいなら>>738と書くほうがわかりやすい
0750デフォルトの名無しさん
2014/10/01(水) 16:19:07.83ID:gepRxEaK>>744のように
this.factory=subFac;
をやると基底クラスのメソッドが呼ばれて困る
基底クラスにそれぞれ戻り値が違う抽象メソッドを作ると
サブクラス化する意味ないし
データをList<>型とDataTable型で返したいだが
もしかしてインタフェースでも抽象化クラスでもそのメソッドは定義できない?
0751デフォルトの名無しさん
2014/10/01(水) 16:26:23.25ID:s7TGI1jHList<T>とDataTableのどっちかが返される処理があったとして、それをどうやって受け取るのよ
0752デフォルトの名無しさん
2014/10/01(水) 16:54:14.46ID:gepRxEaKDataGridView.DataSource=db.ReadAll();
な感じで渡すだけ
確かにラムダで事足りる感じかも
でもなんか気持ち悪いんですよねラムダって
0753デフォルトの名無しさん
2014/10/01(水) 17:11:35.08ID:s7TGI1jH0754デフォルトの名無しさん
2014/10/01(水) 18:31:38.54ID:lbzjQWG/{
void Method();
}
public class Bar : IFoo
{
internal void Method(){} // コンパイルエラー。publicにしないといけない
}
IFooの存在を外部が知らないのに
なんでIFooのメンバーメソッドは必ずpublicにしないといけないの?
もしかして「明示的に実装」すればいいんですか??
public class Bar : IFoo
{
void IFoo.Method(){} // OK
}
つか「明示的な実装」ってなに?
0755デフォルトの名無しさん
2014/10/01(水) 18:35:33.19ID:hBS8HSul0756デフォルトの名無しさん
2014/10/01(水) 18:37:44.52ID:s7TGI1jH> なんでIFooのメンバーメソッドは必ずpublicにしないといけないの?
そういう言語仕様だから
> もしかして「明示的に実装」すればいいんですか??
それでいいならそうすればいい
> つか「明示的な実装」ってなに?
インターフェイス型からでないとアクセスできないようにする、インターフェイスメンバの実装方法
>>755
プログラムの都合上まとめて扱いたいとかあるでしょ
0757デフォルトの名無しさん
2014/10/01(水) 18:41:55.87ID:hBS8HSulインターフェースを置くクラスの中で済むならインターフェースにしなくてもメソッドのままでもいいような
0758デフォルトの名無しさん
2014/10/01(水) 19:22:36.12ID:HmsrWBF60759デフォルトの名無しさん
2014/10/01(水) 20:37:26.47ID:lbzjQWG/→インターフェイス型からでないとアクセスできない
→インターフェイス型が公開されてない場合は隠蔽できる
ってことでOKですかね
パラメータの型もinternalでOKなのでこれが希望の動作でした。
0760デフォルトの名無しさん
2014/10/01(水) 21:40:50.78ID:sDopVjNiie = new SHDocVw.InternetExplorer();
string url = "http://uxnko.com/";
ie.Navigate(url, null, null, null, null);
for ( int i = 0 ; i < 10 ; i++)
{
//ここで、ページのロードが完了するまで待機するけれども
//10秒経っても表示されていない場合には抜ける。
★ ここにどういうコードを記述すれば良いでしょうか?
i = 0;
}
0761デフォルトの名無しさん
2014/10/01(水) 21:45:12.66ID:HmsrWBF60762デフォルトの名無しさん
2014/10/01(水) 21:50:20.01ID:sDopVjNifor ( int i = 0 ; i < 10 ; i++)
{
//この中で判定したいのです。
i = 0;
}
0763デフォルトの名無しさん
2014/10/01(水) 22:05:31.82ID:6sRgXTmoC#扱ううえで何か大切なこととか必須な概念とかあったら教えてください
0764デフォルトの名無しさん
2014/10/01(水) 22:06:17.03ID:BBZiGnKb0765デフォルトの名無しさん
2014/10/01(水) 22:08:51.08ID:gNoQ9GhWON OFFスイッチのように使えるとか目からうろこでした。
ありがとうございます。
0766デフォルトの名無しさん
2014/10/01(水) 22:21:27.34ID:GWwntwD3こんなんでいいんだっけ・・・
string url = "http://uxnko.com/";
bool completed = false;
void ie_DocumentComplete(object pDisp, ref object URL) {
if (URL.ToString() == url) {
completed = true;
}
}
private void button1_Click(object sender, EventArgs e) {
SHDocVw.InternetExplorer ie = null;
ie = new SHDocVw.InternetExplorer();
ie.Navigate(url, null, null, null, null);
ie.DocumentComplete += ie_DocumentComplete;
int i = 0;
for (; i < 10; i++) {
if (completed) {
break;
}
System.Threading.Thread.Sleep(1000);
}
if (i >= 10) {
MessageBox.Show("みれねーよ");
}
else {
MessageBox.Show("もんだいない");
}
}
0767デフォルトの名無しさん
2014/10/01(水) 22:28:38.00ID:W3RtXEoNそれUIがフリーズするから最低の悪手
続きの処理はDocumentCompleteの中でやれ
0769デフォルトの名無しさん
2014/10/01(水) 22:32:23.34ID:BBZiGnKbfor の意味は不明だが
0770デフォルトの名無しさん
2014/10/01(水) 22:39:18.17ID:W3RtXEoNprivate async void button1_略
略
await Task.Run(() => {
int i = 0;
for (略
略
}
});
if (i >= 10) { 略
0771デフォルトの名無しさん
2014/10/01(水) 22:45:39.75ID:gNoQ9GhW<UserControl x:Class="WpfDummyDialog.ConfirmDialog"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Grid>
<Rectangle Fill="Gray" Opacity="0.5" />
<Border Width="300" Height="150" CornerRadius="20" Background="Chocolate" Padding="10">
<DockPanel HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<TextBlock Text="処理中" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</DockPanel>
</Border>
</Grid>
</UserControl>
<Window x:Class="WpfDummyDialog.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:WpfDummyDialog="clr-namespace:WpfDummyDialog"
Title="Window1" Width="400" Height="300">
<Grid>
<WpfDummyDialog:ConfirmDialog x:Name="_confirm" Visibility="Collapsed" />
</Grid>
</Window>
_confirm.Visibility を切り替えて処理中ダイアログを作ったのですが、
どのような処理を書けば、処理中にダイアログが出現して、処理後に
ダイアログが消えるようにできるでしょうか?
BackgroundWorkerやDispatcherを色々試したのですが、
「別スレッドに所有されているため...」と怒られてしまいます。
よろしくお願いします。
0772デフォルトの名無しさん
2014/10/01(水) 23:13:50.81ID:GWwntwD3よくわからんけど
770さんのようにGUIかたまりなくないなら
private async void Button_Click(object sender, RoutedEventArgs e) {
this._confirm.Visibility = System.Windows.Visibility.Visible;
await Task.Run(() => {
//やりたいこと
});
this._confirm.Visibility = System.Windows.Visibility.Collapsed;
}
じゃないん
.NET4なら
this._confirm.Visibility = System.Windows.Visibility.Visible;
Task.Factory.StartNew(() => {
//やりたいこと
System.Threading.Thread.Sleep(5000);
})
.ContinueWith(
(t) => {
this._confirm.Visibility = System.Windows.Visibility.Collapsed;
}, TaskScheduler.FromCurrentSynchronizationContext());
0773デフォルトの名無しさん
2014/10/01(水) 23:15:10.73ID:GWwntwD3消すのわすれたじゃん
0774デフォルトの名無しさん
2014/10/01(水) 23:23:14.04ID:gNoQ9GhWお返事ありがとうございます。
さっそく試してみようと思います。
ただ、環境は.NET3.5なので、
Taskとか使えないです。
4.0なら良かったのになと思います。。。
0775デフォルトの名無しさん
2014/10/01(水) 23:25:35.92ID:HmsrWBF60776デフォルトの名無しさん
2014/10/01(水) 23:35:21.35ID:GWwntwD3private BackgroundWorker worker = new BackgroundWorker();
private void Button_Click(object sender, RoutedEventArgs e) {
this._confirm.Visibility = System.Windows.Visibility.Visible;
worker.DoWork += worker_DoWork;
worker.RunWorkerCompleted += worker_RunWorkerCompleted;
worker.RunWorkerAsync();
}
void worker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) {
this._confirm.Visibility = System.Windows.Visibility.Collapsed;
}
void worker_DoWork(object sender, DoWorkEventArgs e) {
//やいたいこと
System.Threading.Thread.Sleep(5000);
}
0777デフォルトの名無しさん
2014/10/01(水) 23:35:57.10ID:GWwntwD30778デフォルトの名無しさん
2014/10/01(水) 23:36:03.45ID:kM7uhOo0 <Window.Resources>
<BooleanToVisibilityConverter x:Key="b2vConverter"/>
</Window.Resources>
<!-- 略 -->
<WpfDummyDialog:ConfirmDialog x:Name="_confirm"
Visibility="{Binding IsWorking, Converter={StaticResource b2vConverter}}" />
class SampleVM : INotifyPropertyChanged {
public bool IsWorking {
get { return this.m_IsWorking; }
set {
if (this.m_IsWorking != value) {
this.m_IsWorking = value;
this.OnPropertyChanged("IsWorking");
}
}
}
// PropertyChangedイベントとOnPropertyChangedの実装は略
}
で、new Window1してるところでWindow1のDataContextにSampleVMを突っ込んで、
あとは表示切り替えたくなったところでSampleVMのIsWorkingをtrueに設定する
0779デフォルトの名無しさん
2014/10/01(水) 23:55:11.41ID:HAiFBDfS0780デフォルトの名無しさん
2014/10/02(木) 00:05:04.34ID:cNjk8LbjC#5.0と.NET Framework4.5がごちゃごちゃになってないか
ある意味正しいが・・・
0781デフォルトの名無しさん
2014/10/02(木) 00:42:47.66ID:gJSza5Nt非同期ファイル入出力関数使うのとどう違うの?
0782デフォルトの名無しさん
2014/10/02(木) 01:27:19.10ID:N8qwuwR/0783デフォルトの名無しさん
2014/10/02(木) 03:31:22.49ID:p39T/bAP0784デフォルトの名無しさん
2014/10/02(木) 04:13:23.94ID:9LVEJsKx拡張させながら使いたいのですが、新しくソリューションを作ったときなど
そのプロジェクトを勝手に追加してくれるような設定はできますか?
そんなに使う頻度が多くはないので、
とりあえず新しい関数作っておいて
後でユーティリティープロジェクトにまとめればいいやとか思っちゃうと、
とりこぼしちゃうんですよね。
0785デフォルトの名無しさん
2014/10/02(木) 04:51:18.80ID:dvfR9n6Qhttp://www.atmarkit.co.jp/fdotnet/dotnettips/535myprojecttemplate/myprojecttemplate.html
0786デフォルトの名無しさん
2014/10/03(金) 00:34:13.07ID:lhUdsJSE試してみますー
0787デフォルトの名無しさん
2014/10/04(土) 07:18:11.14ID:vX3YqJpJ試してみましたが、ダメでした。
WPFは、シングルスレッドモデルを採用しているから、
マルチスレッドにすると「別スレッドに所有されているため...」と
出るのかなと思っているのですが、どうすれば良いのか解りません。
不可能では無いと思うのですが。。。
0788デフォルトの名無しさん
2014/10/04(土) 07:56:31.93ID:b1ClcSweWinFormsやWPFではマルチスレッド自体がダメなのではなくUIスレッド以外からUIを弄ることがダメ
BackgroundWorkerはそれが考慮されていて、DoWorkはワーカースレッドで呼び出されるからUI触れないけど
ProgressChangedやRunWorkerCompletedはUIスレッドで実行されるからUI触ってもいい
0789デフォルトの名無しさん
2014/10/04(土) 16:30:23.74ID:OI76W/mmなんかいろいろ機能が減ってるなー
0790デフォルトの名無しさん
2014/10/04(土) 16:32:08.10ID:OI76W/mmおどかしやがってwww
0791デフォルトの名無しさん
2014/10/04(土) 20:55:36.25ID:iR8R0Hr7そもそも ICollection が IEnumerable を継承してるので、
IList がわざわざ IEnumerable を継承してる理由が気になりました。
親インターフェイスの更に親を継承するメリットまたはルールがあるのでしょうか?
よろしくお願いいたします。
0792デフォルトの名無しさん
2014/10/04(土) 21:03:25.27ID:Rwz0Tmh5IListのソース見ればICollectionのみになっているよ
http://referencesource.microsoft.com/#mscorlib/system/collections/ilist.cs
リファレンスで明示しているだけじゃない?
0793791
2014/10/04(土) 23:10:54.58ID:iR8R0Hr7MSDN で
public interface IList : ICollection, IEnumerable
と書いてるのは、明示してるだけっぽいですね。
ありがとうございました。
0794デフォルトの名無しさん
2014/10/05(日) 16:48:43.73ID:1+6ntIpv0795デフォルトの名無しさん
2014/10/05(日) 16:53:03.09ID:TMfSLNtWぐぐって自分で情報探せ。その過程が基礎勉強になる
0796デフォルトの名無しさん
2014/10/05(日) 16:53:44.43ID:cZeU51UR0797デフォルトの名無しさん
2014/10/05(日) 17:22:16.95ID:FUXuY2e60798デフォルトの名無しさん
2014/10/05(日) 19:37:23.08ID:S9WGNRrQなんでもいいけど薄くて簡単なのがいいと思うよ。795が言ってるようにググって調べるのが普通になるから、入り口だけならサクッと読み終えるのがよい。
0799デフォルトの名無しさん
2014/10/05(日) 20:23:04.46ID:bGi6T1gy最初に一通り.net frameworkにどんな名前空間とかクラスが有るか目を通しておけば、
使い方はぐぐればいいし。
0800デフォルトの名無しさん
2014/10/05(日) 20:28:02.69ID:Rj3pESVxジェネリクス(Dictionary<string,T>)で取り扱いたいと考えているのですが
型パラメータとして例えばdoubleを指定してしまうとDateTImeは扱えないですよね
Dictionary<string,object>に放り込めばとりあえず動くと思うのですが
型パラメータとしてdoubleもしくはDateTimeを指定する方法はありませんか
よろしくお願いいたします
0801デフォルトの名無しさん
2014/10/05(日) 20:46:47.86ID:cZeU51UR専用の型を作るなら共用体って手も
[StructLayout(LayoutKind.Explicit)]
struct DoubleOrDateTime
{
[FieldOffset(0)]
public readonly double DoubleValue;
[FieldOffset(0)]
public readonly DateTime DateTimeValue;
[FieldOffset(8)]
public readonly bool IsDateTime;
}
0802デフォルトの名無しさん
2014/10/05(日) 20:52:28.99ID:lD5ha8Ex余程大量のデータを扱うとかでなければあえて共用体にする意味はないと思うんだけどw
0803デフォルトの名無しさん
2014/10/05(日) 20:57:52.17ID:Rj3pESVxこれを試してみようと思います
すいませんありがとうございました
0804デフォルトの名無しさん
2014/10/05(日) 20:59:40.35ID:BWhErrhC劇的に変わる場合もあるから侮れないよ
0805デフォルトの名無しさん
2014/10/05(日) 21:26:01.96ID:cZeU51UR0806デフォルトの名無しさん
2014/10/05(日) 21:51:01.53ID:+85pEGasTupleは「値の組」だから明らかに間違い
っていうか値の組として使う場合でもTupleは読みにくいだけだからやめろ
0807デフォルトの名無しさん
2014/10/05(日) 22:11:26.78ID:T+Pyexmg0808デフォルトの名無しさん
2014/10/05(日) 22:25:39.49ID:lD5ha8Ex0809デフォルトの名無しさん
2014/10/05(日) 22:31:16.84ID:cZeU51UR共用体であることが問題になるってこともない
0810デフォルトの名無しさん
2014/10/05(日) 22:32:14.66ID:jxtia/i3コードを実行すると、特定の要素の場合に以下のエラーが出てしまいます。
try catchで囲まずともこれを回避(判定)するうまい判定方法はありませんか?
【問題のコード】
foreach (mshtml.IHTMLElement i_ele in mshtml_ec)
{
try
{
i_ele.getAttribute("href")'
}
catch(Exception ex)
{
【エラー】
threw an exception of type 'System.Runtime.InteropServices.COMException'
continue;
}
}
0811デフォルトの名無しさん
2014/10/05(日) 22:49:09.18ID:ecfyL29T0812デフォルトの名無しさん
2014/10/05(日) 23:01:33.66ID:jxtia/i3上のコードで既にこういう抽出をしているのです。。。
それにも関わらずエラーが出る場合があるんですよね。
mshtml_ec = div.getElementsByTagName("a");
ここで "a" と指定するのと "A" と指定するのとでは
mshtml_ec に返って来る値は異なるのでしょうか。同じ筈なんですが。。。謎
0813デフォルトの名無しさん
2014/10/06(月) 03:15:44.61ID:gqpKCM12すべての<A>タグにHREF属性があるとはかぎらんだろ
つかそもそもどのブラウザクラスつかってるんだよ
0814デフォルトの名無しさん
2014/10/06(月) 10:37:42.07ID:n9a1vo98顔文字を入力したいのではなく、
普通に文字として(A)を文面に入れたいのですが
何か設定方法があるのでしょうか?
0815デフォルトの名無しさん
2014/10/06(月) 10:56:35.70ID:Bqdlcfw10816デフォルトの名無しさん
2014/10/06(月) 22:06:01.17ID:5L7V4ReUに誰か答えてやれよ
0817デフォルトの名無しさん
2014/10/06(月) 22:39:05.12ID:OSvmh2nt【P2P電話】「Skype」その52
http://anago.2ch.net/test/read.cgi/software/1405060164/
0818デフォルトの名無しさん
2014/10/08(水) 03:55:15.34ID:n5SXiiCTどのようにして使い分けていますか?
0819デフォルトの名無しさん
2014/10/08(水) 07:46:47.18ID:N/3g07YYクラス名・変数名に迷ったら書き込むスレ。Part24
http://peace.2ch.net/test/read.cgi/tech/1390230345/
0820デフォルトの名無しさん
2014/10/08(水) 13:30:05.78ID:XHiy9Jjo使い分け以前にどっちもまず使わないよね普通。
getで用が足りるし。
強いて言えば算出ていることを強調したい場合にcalculateを使うのはありだと思うけど。
0821デフォルトの名無しさん
2014/10/08(水) 16:17:30.46ID:Mr3CuVyx個人的な感覚だが
Calculateは「数式を計算して値を返す」的な意味合いを感じるので
引数を与えると値を算出して戻り値で返す関数っぽい
Computeはもっと範囲の広い、処理全般を指しそうに思える
0822デフォルトの名無しさん
2014/10/08(水) 17:30:07.63ID:n5SXiiCTありがとうございます
Calculateは電卓のような機能をもった関数に使うことにします
0823デフォルトの名無しさん
2014/10/08(水) 17:42:00.15ID:+qoLuiEyclassとか戻り値とかの練習プログラム書いたほうがいいのかな
0824デフォルトの名無しさん
2014/10/08(水) 17:42:57.70ID:5a7mAS48確かに5年ほど宿題を量産したが全然スキルはあがらなかったね‥
0826デフォルトの名無しさん
2014/10/08(水) 18:48:11.15ID:nI8zrZND上回るものなど作ってみないとスキルは付かないよ
0827デフォルトの名無しさん
2014/10/08(水) 19:50:32.87ID:N/3g07YY作りたいものがじゃんじゃん作れればいいっしょ
そのうちスキルがついてくる
もちろん仕事ならシラネ
0828デフォルトの名無しさん
2014/10/08(水) 20:44:47.58ID:Pgiut6rP0829デフォルトの名無しさん
2014/10/08(水) 20:51:36.09ID:eZe0by7Q0830デフォルトの名無しさん
2014/10/08(水) 21:04:36.62ID:tsZBmQpQMFCまじオヌヌヌ
0831デフォルトの名無しさん
2014/10/08(水) 22:20:07.95ID:qB3VYvLo大学院の専門家のスキルの方が上
所詮お前ら低学歴だろ
0832デフォルトの名無しさん
2014/10/08(水) 22:21:35.47ID:0/yzM00LC/C++ で500ステップ以下では話にならないようだね‥今後長編にトライしたいが、アマチュアベースでどれくらいの規模を目指せばいい?
いや >>827 が正論だね‥作りたいもの‥なんだろう?
0833デフォルトの名無しさん
2014/10/09(木) 00:23:19.12ID:SgahCzoaやつら知識だけでスキルがないのがほとんど
0834デフォルトの名無しさん
2014/10/09(木) 01:07:53.93ID:Bn1wfzynお坊ちゃんはカナヅチで指つぶさないうちに家に帰って宿題しとけ
0835デフォルトの名無しさん
2014/10/09(木) 01:52:44.13ID:WNfOQB2Sあの「高学歴はプライドばかり高くて使えない」っていうほとんど根拠がない高学歴への
ルサンチマンがあんなに支持されるほど、この業界低学歴の奴が増えてるんだなと。
0836デフォルトの名無しさん
2014/10/09(木) 03:31:55.77ID:rnq5JbmGあの話の肝って学歴じゃなくね?
現場の時代の流れを追うことを放棄した上司とか
そういうレイヤーの話だと思ったんだけど
0837デフォルトの名無しさん
2014/10/09(木) 10:23:04.80ID:4UYOLoGKこれのことか!?
記事
http://el.jibun.atmarkit.co.jp/minagawa/2010/04/post-ebc4.html
小説
http://el.jibun.atmarkit.co.jp/pressenter/2010/11/1-828a.html
http://el.jibun.atmarkit.co.jp/pressenter/2010/11/2-54cd.html
http://el.jibun.atmarkit.co.jp/pressenter/2010/11/3-bc3f.html
http://el.jibun.atmarkit.co.jp/pressenter/2010/12/4-a74c.html
http://el.jibun.atmarkit.co.jp/pressenter/2010/12/5-7fc3.html
http://el.jibun.atmarkit.co.jp/pressenter/2010/12/6-77b8.html
http://el.jibun.atmarkit.co.jp/pressenter/2010/12/7-28-5748.html
http://el.jibun.atmarkit.co.jp/pressenter/2011/01/8-7115.html
http://el.jibun.atmarkit.co.jp/pressenter/2011/01/9-bf58.html
http://el.jibun.atmarkit.co.jp/pressenter/2011/01/10-af90.html
http://el.jibun.atmarkit.co.jp/pressenter/2011/01/11-ead7.html
http://el.jibun.atmarkit.co.jp/pressenter/2011/02/12-ae9d.html
http://el.jibun.atmarkit.co.jp/pressenter/2011/02/13-61a8.html
http://el.jibun.atmarkit.co.jp/pressenter/2011/02/post-6b95.html
0838デフォルトの名無しさん
2014/10/09(木) 11:38:40.84ID:Eea3XLKn突然どうした?
0839デフォルトの名無しさん
2014/10/09(木) 12:08:00.07ID:uNKLKboE{
Min,
Hage,
Hoge,
Moge,
....,
Homo = Hoge, //←これを後からなんとなくここに追加しちゃう
Max,
}
int max = (int)Foo.Max; // 3
これって罠じゃね?
0840デフォルトの名無しさん
2014/10/09(木) 12:12:45.78ID:SxO2Qdze0841デフォルトの名無しさん
2014/10/09(木) 12:23:57.64ID:yo/O9W+N3になるようなことしてるお前がアホなだけで罠でも何でもないんじゃね?
一瞬、バージョン管理してなくて定数の更新が反映されない問題かと思っちゃったぜ
0842デフォルトの名無しさん
2014/10/09(木) 21:19:37.59ID:yuIP1TaU[Flags]ならAll=~0でいいんだけど
0843デフォルトの名無しさん
2014/10/09(木) 21:39:36.94ID:PedOr8Xr0844デフォルトの名無しさん
2014/10/10(金) 18:36:38.68ID:OpKqoeIeMyHost.exe
RawLibrary.dll (完全信頼のアクセスが必要)
MyLibary.dll (↑の安全なラップ)
MyAddIn.dll (部分信頼のAppDomain上で作動)
Pipelines諸々
こんな感じの構成で、MyAddInから直接RawLibraryを呼ぶことは出来ないが、
MyLibaryを介して操作出来るようにするには、どこをどうすればいいんでしょうか?
0845デフォルトの名無しさん
2014/10/11(土) 16:30:17.04ID:b7Mln+VMその格納した変数を一個ずつ別のルーチンで使用します。
しかし、最初に配列に変数を格納するときに、その変数が何個あるか読めません
ループの中でそれを格納しいく仕組みです
2件かもしれないし、1000件かもしれません。
こういった場合、配列は最初に
int[] a = new int[5];
といったように、5個つかえるように指定しなければなりません
しかし、今回は、1000個格納する可能性もあるのっで、
int[] a = new int[1000];
となりますが、リソースを食ってしまいそうです。
こういった場合変数格納はどういった方法がいいのでしょうか?
0846デフォルトの名無しさん
2014/10/11(土) 16:34:47.96ID:qfHZLil+List<T>で検索したら出てくる
0847デフォルトの名無しさん
2014/10/11(土) 16:35:48.49ID:qGYvKsgJつList<int>
0848デフォルトの名無しさん
2014/10/11(土) 16:54:56.80ID:nMlC9xnxList<T>知らないレベルだと難しいだろうが
0850デフォルトの名無しさん
2014/10/11(土) 20:42:11.89ID:m7t1xuYNpublic partial class MainWindow : Window {
public ObservableCollection<string> PeopleList{get;set;}
public MainWindow() {
InitializeComponent();
PeopleList = new ObservableCollection<string>();
DataContext = this;
PeopleList.Add("alice");
PeopleList.Add("bob");
}}
こんなようにListBoxに表示させたいときpublicと{get;set;}両方書かないとデータが表示されませんでした。なぜですか?
0851デフォルトの名無しさん
2014/10/11(土) 20:48:08.70ID:nMlC9xnxsetに関してはprivateをつける手もある
public ObservableCollection<string> PeopleList { get; private set; }
0852デフォルトの名無しさん
2014/10/11(土) 21:06:38.30ID:olDhqMGpあれ?これザムル側でエラーにならなかったっけ?セッターがないとか言われる気がするけど。
0853デフォルトの名無しさん
2014/10/11(土) 21:12:54.71ID:nMlC9xnxその手のエラーが出るのはBindsTwoWayByDefaultがTrueになってるTextBox.Textとか
ItemsSourceは大丈夫
0854デフォルトの名無しさん
2014/10/11(土) 21:14:13.71ID:olDhqMGpそうかごめんなさい。
失礼しました。
0855デフォルトの名無しさん
2014/10/11(土) 21:14:52.23ID:nLciC8aS0856デフォルトの名無しさん
2014/10/11(土) 21:21:11.99ID:VQ3viUJo0857デフォルトの名無しさん
2014/10/11(土) 21:22:47.25ID:nLciC8aS楽できる機能はおおむねゆるい設定じゃないとダメって印象
0858デフォルトの名無しさん
2014/10/13(月) 06:42:38.67ID:+UmC91w2Hoge[,]
List<List<Hoge>>
それぞれの違いと使用例を教えて下さい
0859デフォルトの名無しさん
2014/10/13(月) 07:56:56.31ID:TEwcKFwB・T[]は固定長
・List<T>は見かけの要素数とデータ格納用の配列を持ってて、要素数が足りなくなると別の大きな配列に入れ替える
⇒要素数が一定でシフトの発生しない場合や配列しか受け取らないようなメソッドに配列を使う
T[][]とT[,]
・全データを一括で持つか、行単位で1次元配列として分けるかの違い
・T[][]は各行の長さを変えられるけど初期化に繰り返し処理がいる
・アクセス速度はT[,]のが速いがインスタンスのサイズが大きくなるのでLOHの可能性が高い
個人的にはT[][]なんか滅多に使わないけどT[,]を蛇蝎のごとく嫌ってる人もいて微妙
原始的だけどSZ配列+幅情報が一番汎用的な気もする
0860デフォルトの名無しさん
2014/10/13(月) 08:03:28.50ID:7f6VqfaZ0861デフォルトの名無しさん
2014/10/13(月) 08:21:56.69ID:R99qWLrlHoge[ , ]とHoge[][]の構造上の差は、ここの比較イメージがわかりやすいかもしれない
>原始的だけどSZ配列+幅情報が一番汎用的な気もする
そんなに汎用性あるか・・・?
少なくともC#でそういう仕組みのものが直接提供されていない以上
このスレで質問する初心者に勧めるものじゃないと思うが
0862デフォルトの名無しさん
2014/10/13(月) 08:41:01.32ID:TEwcKFwB自アセンブリ内で完結するなら気にせず使えばいいと思う
0863デフォルトの名無しさん
2014/10/13(月) 08:41:35.46ID:j90eBv3o1番目の添字も毎回変わるような場合は配列の配列だと間接アクセスが増えて効率悪くなるけど
0864デフォルトの名無しさん
2014/10/13(月) 08:56:14.62ID:VoMmfcCGT[][] → ポインタのポインタ演算
そんな性能違うのん?
0865デフォルトの名無しさん
2014/10/13(月) 09:07:49.59ID:j90eBv3o基本的に配列の連続アクセスは一次元の方が最適化が効いて速い
for (int i=0;i<a.Length;i++) for(int j=0;j<a[i].Length;j++) use(a[i][j]);
の形なら、ボトルネックになる内側のループは結局一次元配列に対するループなので速い
さすがにa[i][j]のa[i]は毎回参照外しするんじゃなくてキャッシュされるよ
0866デフォルトの名無しさん
2014/10/13(月) 09:29:07.93ID:HMQ6z8sD0867デフォルトの名無しさん
2014/10/13(月) 09:30:34.51ID:j90eBv3o最適化の問題だって言ってるでしょ
0868デフォルトの名無しさん
2014/10/13(月) 10:16:24.69ID:HMQ6z8sD具体的にどういう最適化の違いがあるの?
0869デフォルトの名無しさん
2014/10/13(月) 10:19:56.80ID:j90eBv3oILにSZ配列専用の命令がある
0870デフォルトの名無しさん
2014/10/13(月) 10:40:03.21ID:HMQ6z8sDhttp://schima.hatenablog.com/entry/20091118/1258518836
0871デフォルトの名無しさん
2014/10/13(月) 11:05:16.63ID:4es499Rmだからと言ってわざわざ1列に並べる気にはなれんわな
この手の性能議論を鵜呑みにしてループはforが一番早いから!と言って頑なにforeach使わない人とか少なくないし・・・
0872デフォルトの名無しさん
2014/10/13(月) 11:16:15.34ID:2drFpBnPこの場合、入力用のフォーム作るのがいいのかな
それとも、よく使われるテンプレートってありますか?
0873デフォルトの名無しさん
2014/10/13(月) 11:28:43.06ID:VoMmfcCG0874デフォルトの名無しさん
2014/10/13(月) 15:11:05.97ID:4LEVj/AJhttp://msdn.microsoft.com/ja-jp/library/windows/apps/jj712233.aspx
ここでIGameインタフェースでは
IList<IList<State>> Board { get; set; }
と定義して、インスタンス化するときはGameクラスで
Board = new State[RowCount][];
のようにジャグ配列を使っています
Hoge[,]だとToList()メソッドがないことが関係しているんでしょうか?
0875デフォルトの名無しさん
2014/10/13(月) 15:19:23.10ID:s1C0DJmMっていうか、上で逆のこと言ってる人がいるけど、そもそも多次元配列って普通はあまり使わないよそもそも。
俺もエクセルのオートメーション以外で使ったことない。
0876デフォルトの名無しさん
2014/10/13(月) 15:22:28.26ID:0QLRZB3eIListは実装してるけど
C#1.0から2.0に移る過程でいらないから放って置かれたんだな
0877デフォルトの名無しさん
2014/10/13(月) 19:58:52.74ID:5uLcTVyeを
2012年5月29日 00時00分00秒
としたい。
ttp://www.atmarkit.co.jp/fdotnet/dotnettips/203dateparse/dateparse.html
使ってもうまくいかないのだけど、どうやればいいでしょうか?
0878デフォルトの名無しさん
2014/10/13(月) 20:12:39.27ID:TEwcKFwB0879デフォルトの名無しさん
2014/10/13(月) 20:17:10.76ID:U2eHNo6Bこことそのサブの項目に目を通す。
まったく難しくない。
http://msdn.microsoft.com/ja-jp/library/26etazsy%28v=vs.110%29.aspx
0880デフォルトの名無しさん
2014/10/13(月) 20:24:54.96ID:VoMmfcCGCのprintfとかみたいなのを引きずる意味があるのか
もっと現代的にできなかったものか
0882デフォルトの名無しさん
2014/10/13(月) 21:14:24.66ID:4LEVj/AJ{
List<Func<int,int,Space>> Directions;
public Direction(int row,int column)
{
Directions = new List<Func<int, int, Space>>();
Directions.Add(Up(row,column) );//←ここで引数エラーになります。
}
public Space Up(int row,int column)
{
row -= 1;
return new Space(row, column);
}
}
0883デフォルトの名無しさん
2014/10/13(月) 21:23:19.48ID:R99qWLrlDirectionsの要素の型はFunc<int, int, Space>であってSpaceではない
そこには Direction.Add(Up)とだけ書けばいい
0884デフォルトの名無しさん
2014/10/13(月) 21:32:50.43ID:4LEVj/AJありがとう
0885デフォルトの名無しさん
2014/10/13(月) 22:19:57.08ID:P7wkOe8Dその結果から、datatableを作成したいと考えています。
この処理が長いので、別クラスにしたいです。
引数にXMLとURLで、返す値は、datatable と行ったことは出来るのでしょうか?
フォーム上のプログラム
function(postのXML,url)
function クラス
・入力
postのXML,url
・出力
datatable
これは、return databable;
とすればいいのでしょうか?
0886デフォルトの名無しさん
2014/10/13(月) 22:48:44.05ID:jZxRKtQH0887デフォルトの名無しさん
2014/10/14(火) 00:58:33.95ID:H4CFmhAR相互運用でダイレクトXはちと辛いか
0888デフォルトの名無しさん
2014/10/14(火) 02:59:41.31ID:0VoKz3YK0889デフォルトの名無しさん
2014/10/14(火) 03:01:38.33ID:RZWbQNJx初心者が言うシンプル(笑)スマート(笑)じゃあるまいし
0890デフォルトの名無しさん
2014/10/14(火) 03:05:25.02ID:0VoKz3YKどこで石を置けるか判定しているのかさっぱりわからんの
0891デフォルトの名無しさん
2014/10/14(火) 04:16:37.14ID:t5fH7arrXNAとかMonoGameとかSharpDXとかある
まあ確かに最近は猫も杓子も馬鹿の一つ覚えのようにUnityで
それ以外のやつらの存在が霞みがちだが
0892デフォルトの名無しさん
2014/10/14(火) 05:03:45.84ID:BVjyeKaO0893デフォルトの名無しさん
2014/10/14(火) 08:06:07.91ID:0VoKz3YKそこみたいですね、ちょっと見でわかるってすごい
理解するのに何時間もかかった
でも何故こんなに細切れに複数のメソッドにわけるんでしょうか
単純に見やすくするため?
それにIsValidMoveSpaceを静的メソッドを使っている理由がわかりません
わざわざboardを引数で渡したりしてるし・・・
将来的に別クラスで定義させるためかな?
0894デフォルトの名無しさん
2014/10/14(火) 20:59:00.29ID:Pgs1s2Orにある Stream newStream = myHttpWebRequest.GetRequestStream ();
のところで、ポストできるサーバーがないとエラーになってしまいます。
このエラーを TRY CATCHでは無く、TRY 中でなんとかしてひろいたのですが、どうやればいいのでしょうか?
0895デフォルトの名無しさん
2014/10/14(火) 21:03:52.40ID:cvEuiIpj0896デフォルトの名無しさん
2014/10/14(火) 21:03:59.48ID:NDmWndw5tryは多段にできるけどそういうこと?
try {
Stream newStream;
try {
newStream = req.GetRequestStream();
} catch (...) {
...
}
...
}
0897デフォルトの名無しさん
2014/10/14(火) 21:36:21.64ID:4u/bmfXfちょっと簡略化して例えば、
MyHost.exe
MyLibary.dll (完全信頼を要求し、決まったファイルのみを読み書きする)
MyAddIn.dll (部分信頼のAppDomainでFileIO使用禁止)
Pipelines諸々
AddInに好き勝手にファイル操作はしてほしくないが、MyLibraryを通してならいいよというイメージなのですが
AppDomainの完全信頼のアセンブリにMyHostとMyLibraryを追加、後者にAllowPartiallyTrustedCallers属性を追加
これで行けるかと考えたのですがMyLibaryでSecurityExceptionが発生します
0898デフォルトの名無しさん
2014/10/15(水) 00:23:55.32ID:/A+YcmotベースとなるオブジェクトはPanelがいいの?
んでPanelのGraphicsを生成してそいつに画像を乗せるのが定石?
Graphics g= Panel1.CreateGraphics();
for(int i = 0; i < 10; i++){
g.DrawImage(img, x, y, img.Width, img.Height);
0899デフォルトの名無しさん
2014/10/15(水) 00:24:33.26ID:/A+Ycmot0900デフォルトの名無しさん
2014/10/15(水) 01:25:17.70ID:hysjMGvQ適切な回答が欲しければ要件は詳細に書く。
いい加減な質問にはいい加減にしか答えようがない。
0901デフォルトの名無しさん
2014/10/15(水) 01:28:43.70ID:tciblAtoOpenGL
0902デフォルトの名無しさん
2014/10/15(水) 08:18:05.42ID:tcLFVAdrWPF
0903デフォルトの名無しさん
2014/10/15(水) 08:53:30.65ID:Mz70dzpQ要件は詳細に書いたほうがいいね
0904デフォルトの名無しさん
2014/10/15(水) 11:42:44.14ID:v6NXSltGとりあえずそのコードだとウィンドウの再描画時に消えるよ
0905デフォルトの名無しさん
2014/10/15(水) 15:34:46.35ID:2R9TmenVWebBrowser
0906デフォルトの名無しさん
2014/10/16(木) 12:32:57.93ID:+7NVe3BFSQLでいうと、
ALTER TABLE test_table DROP COLUMN 削除したいコラム
にあたります
0907デフォルトの名無しさん
2014/10/16(木) 13:43:49.77ID:6zTGqYum0908デフォルトの名無しさん
2014/10/16(木) 13:49:51.45ID:rvFRd6iT0909906
2014/10/16(木) 16:37:25.91ID:+7NVe3BFThank you.
下記にも説明ありました。
ttp://stackoverflow.com/questions/75123/remove-columns-from-datatable-in-c-sharp
0910デフォルトの名無しさん
2014/10/17(金) 22:44:13.16ID:a5wn0fVqあっさりWEBアプリとして動いたのでビックリしました。
ローカルアプリとWEBアプリを、同じ感覚で作れるって
結構凄くて便利だと思うのですが、なぜSilverlightは
オワコン扱いなのでしょうか?
0911デフォルトの名無しさん
2014/10/17(金) 22:48:32.62ID:RHuqairbhtml5+JavaScriptで大体済むんだからむしろローカルアプリもこれでいくのがいいわー
とかそんなん
たまたまブラウザに乗ってたのがJavaScriptというのが悲劇だよな
0912デフォルトの名無しさん
2014/10/17(金) 22:55:54.89ID:GOPRB/WaFlash対抗だったものだけど普及する前にモバイルが台頭して
html5とモバイルのネイティブアプリが優勢になったのさ
0913デフォルトの名無しさん
2014/10/17(金) 23:02:22.56ID:hygHBCT2FlashやSilverlightなんて使えないようにしてる
0914デフォルトの名無しさん
2014/10/17(金) 23:16:03.71ID:TuXIYpHMWPFと同じ感覚で作れますと言っても宣伝にならないし、
WinForms感覚で作りたいならASP.NETのWebFormsという優秀な子がいる
ニーズがないんだよ
0915デフォルトの名無しさん
2014/10/17(金) 23:30:58.21ID:GOPRB/WaXAML=HTML
C#など=javascript
cssに相当するものも存在するし
0916デフォルトの名無しさん
2014/10/17(金) 23:31:02.09ID:g7QKTwjjそれHtml5も同じじゃないの
0917デフォルトの名無しさん
2014/10/18(土) 00:06:07.42ID:5eObO2aRまあ.netはリバースエンジニアリングしやすいだろといわれるとそれまでだが
0918デフォルトの名無しさん
2014/10/18(土) 05:21:24.37ID:z8db1sck0919デフォルトの名無しさん
2014/10/18(土) 07:37:52.41ID:GqR4PR9Wたかがビューのソースが見えるだけだぞ?
フロントのソースが見えるとロボットを作ってサービスを悪用するのが容易ではあるが、
それはクライアントとサーバー間のインターフェイスが統一されていて扱いやすいことの裏返しでもある
0920デフォルトの名無しさん
2014/10/18(土) 07:43:06.47ID:sKVK4DBV0921デフォルトの名無しさん
2014/10/18(土) 07:57:01.90ID:oMy4xH7m0922デフォルトの名無しさん
2014/10/18(土) 08:28:50.95ID:hIPbxheZ0923デフォルトの名無しさん
2014/10/18(土) 08:39:17.76ID:GqR4PR9WWebフレームワークの一個や二個は使えるようになっとけよ
0924デフォルトの名無しさん
2014/10/18(土) 09:01:41.65ID:CJKU74euMS製品というかVisualStudioが楽すぎて他の環境がかったるすぎる
0925デフォルトの名無しさん
2014/10/18(土) 12:54:52.49ID:AiF0yQSmPCはいまだフラッシュ スマホはネイティブアプリで虚空に漂ってないか
0926デフォルトの名無しさん
2014/10/18(土) 12:59:15.15ID:7J55/Oedsection要素とか適当なページのソース開いても必ず含まれてるとすら感じるレベル
フラッシュ代替としてどうかは知らん
0927デフォルトの名無しさん
2014/10/18(土) 13:42:05.36ID:1ym1tiKm>VisualStudioが楽すぎて他の環境がかったるすぎる
禿同するわ
0928デフォルトの名無しさん
2014/10/18(土) 14:39:04.00ID:l/ZwH6UNこういうnewのときだけに使うの?
using (Foo foo = new Foo())
{
}
こういうメソッドで取得みたいのでは使ってはダメ?
using (Foo foo = FooFactory.createFoo())
{
}
0929デフォルトの名無しさん
2014/10/18(土) 14:41:26.86ID:5eObO2aR後者はImageオブジェクトからGraphicsを取得した際なんかで良く使う
http://stackoverflow.com/questions/4154648/preventing-outofmemoryexception-with-gc-addmemorypressure
0930デフォルトの名無しさん
2014/10/18(土) 14:41:37.24ID:bur1GAQfoxyplotというのを試そうとしましたが
コントロールを追加するためにdllを読み込んだところ、
OxyPlot.WindowsForms.dllには、ツールボックスに配置できるコンポーネントが何もありません
と出てできませんでした
0931デフォルトの名無しさん
2014/10/18(土) 14:47:21.28ID:7J55/Oed0932デフォルトの名無しさん
2014/10/18(土) 15:03:12.94ID:l/ZwH6UNありがとう
メソッドがnullを返却する場合でもusingでくくって大丈夫かな
0933デフォルトの名無しさん
2014/10/18(土) 15:17:43.93ID:bur1GAQfとても実用的な速度ではなかったです
0934デフォルトの名無しさん
2014/10/18(土) 16:26:36.42ID:edoMpshD>>900
0935デフォルトの名無しさん
2014/10/18(土) 16:29:23.37ID:5eObO2aR大量のデータの処理は間に合わんよ
後は仮想化?
0936デフォルトの名無しさん
2014/10/18(土) 16:38:08.68ID:THqqqqi/0937デフォルトの名無しさん
2014/10/18(土) 16:45:58.19ID:5eObO2aRLinesもあるし
0938デフォルトの名無しさん
2014/10/18(土) 18:47:01.06ID:9N+qrC2m0939デフォルトの名無しさん
2014/10/18(土) 19:20:14.12ID:bur1GAQfありがとうございます
これで出来ました
0940デフォルトの名無しさん
2014/10/18(土) 21:18:28.90ID:+tyzGHurOK
nullならなにもしない
つか試せば分かる
>>939
∧∧
ヽ(・ω・)/ ズコー
\(.\ ノ
、ハ,,、
0941デフォルトの名無しさん
2014/10/18(土) 21:51:17.61ID:l/ZwH6UNありがとうございました
0942デフォルトの名無しさん
2014/10/18(土) 23:05:26.09ID:aI4jMMSJ∧∧
ヽ(・ω・)/ ズコー
\(.\ ノ
、ハ,,、
0943デフォルトの名無しさん
2014/10/18(土) 23:14:36.20ID:zDU0b//IWPFはこういうのどうやっても糞遅いよ。
過去に散々実験したから絶対間違いない。
とは言っても1000点程度の折れ線なら10msのオーダーだと思うけど。
GDI+のGraphics.DrawLinesって与える点の数が2未満だと例外投げるお馬鹿仕様なんだよね。
1点以下または空の配列なら何も描画しない仕様の方が使いやすいと思うんだが、なんでこんな要らんことするのか。
0944デフォルトの名無しさん
2014/10/18(土) 23:19:26.49ID:XM+6Nb200945デフォルトの名無しさん
2014/10/18(土) 23:44:50.37ID:zDU0b//I点なしや1点は多点の特殊ケースを考える方が自然だし、その方が使いやすい。
少なくともそれを問答無用で例外を投げる(間違いとみなす)のはおかしい。
0946デフォルトの名無しさん
2014/10/19(日) 00:34:13.28ID:QGjrnvoD0947デフォルトの名無しさん
2014/10/19(日) 00:36:47.51ID:WgY9Tq0K0948デフォルトの名無しさん
2014/10/19(日) 00:40:00.64ID:FPgApT/T例外処理はどうしても重くなるからな
0949デフォルトの名無しさん
2014/10/19(日) 02:00:53.54ID:f5Hg7b2lてか例外出るって今知ったわ
0950デフォルトの名無しさん
2014/10/19(日) 02:37:36.89ID:sVtqNbj4線の要件を満たさない引数を渡すほうが悪い
0951デフォルトの名無しさん
2014/10/19(日) 02:38:54.99ID:QxqVqA7Rでok
0952デフォルトの名無しさん
2014/10/19(日) 02:44:46.01ID:dYMEKjkNMSの中の人が考えた仕様は例外じゃ!
あわせましょう
0953デフォルトの名無しさん
2014/10/19(日) 02:53:24.19ID:sVtqNbj4「すみません、いただいた情報では線は描けませんが」と報告が上がってくるのが
もっとも穏当で筋の通った流れだろう
それとも「それぐらい自分で考えろ」って言い捨てる?
0954デフォルトの名無しさん
2014/10/19(日) 02:58:36.90ID:sVtqNbj4上司部下がどうのとか要らぬフレームのもとになりそうだから忘れてほしい
すまんかった
0955デフォルトの名無しさん
2014/10/19(日) 03:05:01.02ID:WgY9Tq0K0956デフォルトの名無しさん
2014/10/19(日) 03:19:58.11ID:dYMEKjkN実際のところはすごい階層の組織になってて処理するのはおそらく末端だろうけど
むかーしのロジックの書き方のように末端がこれでは線がかけませんって報告を
伝言ゲームで返すほうがいいのか?
それとも点を書くのがいいのか?
ダイレクトにこれは書けませんって返ってきてもいいと思うけどな
Cでエラー処理書くとなるとリターンコードをひたすら階層分返してたんだぞ
0957デフォルトの名無しさん
2014/10/19(日) 03:21:15.08ID:gAtBbPfl0958デフォルトの名無しさん
2014/10/19(日) 04:08:03.05ID:lKnJZ0BO強制される場合だってあるし、その上金まで払ってるんだ。
文句の一つでも言わせてやろうよ。
0959デフォルトの名無しさん
2014/10/19(日) 04:43:44.54ID:ZBVPXUuk複数の線分の情報を変数に格納できずに誤ってメソッドに引数として渡してしまったら例外出てほしいだろ
1点以下orナルの引数で何も描写しないことを望む奴は早々いないよ
通常は設計の段階で線分を引く必要ない状況で分岐のコードを書くし
0960デフォルトの名無しさん
2014/10/19(日) 07:17:50.82ID:I8zMPvcx0961デフォルトの名無しさん
2014/10/19(日) 09:38:01.01ID:5cbEIqOp0962デフォルトの名無しさん
2014/10/19(日) 09:57:50.16ID:pzY+Dfmp無しの理由も無いだろう
0963デフォルトの名無しさん
2014/10/19(日) 11:38:34.45ID:U9zncy/Oつまりこう言いたいんだろ
階段を登って降りるのが面倒だから
下にマットを並べて窓から飛び降りればいいじゃんて
登る前にあらかじめマットを並べとくんだろ
0964デフォルトの名無しさん
2014/10/19(日) 13:00:35.68ID:WgY9Tq0K例外かよくっそめんどくせえ・・・ってなってtry catchして無視するか
気付かずにそのままにされて後で大問題になるかの2択だろう
0965デフォルトの名無しさん
2014/10/19(日) 13:02:21.26ID:FPgApT/T点が1つまたは0の時ってわかってるんなら、手前ではじけばいいじゃん(´・ω・`)
0966デフォルトの名無しさん
2014/10/19(日) 13:03:29.67ID:dYMEKjkNそもそも「線の連なり」を表現するためのものに1点以下なんて突っ込むのは例外でいいよ
上のほうで想定しとけってレベル
0967デフォルトの名無しさん
2014/10/19(日) 13:13:21.18ID:pRVsX1zF0968デフォルトの名無しさん
2014/10/19(日) 13:14:39.93ID:dYMEKjkNできあいのもの利用するんだからあわせろ
0969デフォルトの名無しさん
2014/10/19(日) 13:17:37.34ID:p/KWa0Ksこういう考え方が理解できるかどうかはプログラマとしての適性の最小要件を満たすかどうかの
判定に使えそうだ。
それでいくとこのスレやっぱりダメな奴多いんだなw
0970デフォルトの名無しさん
2014/10/19(日) 13:18:52.99ID:dYMEKjkN.netで相当楽してるしvsあれば楽できてるのにこんな重箱の隅つつくようなことで
ぐちぐち言ってるほうが糞だわ
0971デフォルトの名無しさん
2014/10/19(日) 13:20:30.36ID:dYMEKjkNマイコンでプログラムやってるわけじゃねえしぐだぐだいう暇があったらコード書け
0972デフォルトの名無しさん
2014/10/19(日) 13:26:41.80ID:FPgApT/T0973デフォルトの名無しさん
2014/10/19(日) 16:01:19.68ID:f5Hg7b2lというわけで死んどけよ
0974デフォルトの名無しさん
2014/10/19(日) 16:16:42.74ID:VogVAmE7って考えれない奴はプログラミングだけじゃなく人間社会に向かない
0975デフォルトの名無しさん
2014/10/19(日) 17:35:48.30ID:lj912BXJ個別の問題を一般論にすり替えて何か言ったつもりになってるのなら馬鹿そのもの。
0976デフォルトの名無しさん
2014/10/19(日) 20:33:23.89ID:QGjrnvoDGraphics.DrawLinesが線を1本以上引くって仕様なら例外投げるのが普通だし
0977デフォルトの名無しさん
2014/10/19(日) 20:41:43.01ID:ttAUwWX60978デフォルトの名無しさん
2014/10/19(日) 21:09:02.65ID:G7zRYyk+これだな
0979デフォルトの名無しさん
2014/10/19(日) 21:10:42.71ID:4AgBlLkwそうなのよね
点に見せたければ2点を与えてその距離を同じか隣にしないと
見た目点にならないからそもそも「点を描画してくれる」という仕様はありえない
0980デフォルトの名無しさん
2014/10/19(日) 21:32:59.35ID:cXTiIqkF平面上の点の列を順に結ぶ連続する線分、って聞いたときに、>>967が言うように
点の数が0と1の場合も含めて一般化する考え方が理解できない奴って。
0981デフォルトの名無しさん
2014/10/19(日) 21:38:08.86ID:4AgBlLkwbitmap画像のような単なるピクセル系の座標に点打ってるつもりの人も居れば
内部的に数学的な処理をしたあと投影してるというのもあるというのを理解してなければどうしようもない
0982デフォルトの名無しさん
2014/10/19(日) 21:42:03.20ID:cmOHQxCN0983デフォルトの名無しさん
2014/10/19(日) 22:49:00.98ID:Br+UTkRc負け惜しみのついでにスレ立てといて
便利君よ
0984デフォルトの名無しさん
2014/10/19(日) 23:47:59.16ID:UMKfUW2G「余計なことすんな」と言う気持ちもわかるが、CADみたいに欠陥が許されない用途もあるから
エラーにする他無いんだろうな
0985デフォルトの名無しさん
2014/10/19(日) 23:59:22.47ID:ES7BEL/1始点と終点N個の引数にしろよ
0986デフォルトの名無しさん
2014/10/20(月) 00:00:31.52ID:QkxWZYWv0987デフォルトの名無しさん
2014/10/20(月) 00:09:52.08ID:exxFMbgq描画対象が存在しない場合をエラーとする意図があるなら、サイズが0の図形や
空文字列の描画もすべてエラーにしてるだろう。
0988デフォルトの名無しさん
2014/10/20(月) 00:27:11.11ID:/31eN32gそれは倒錯そのもので、自分で書いてるように、点の数が1以下の場合をエラーとみなすかどうかは
個々のアプリケーションの事情によるのだから、ライブラリが勝手に判断するのは
余計なお世話としか言いようがない。
0989デフォルトの名無しさん
2014/10/20(月) 00:29:28.48ID:Yk5yHT0xエラーとしてみなすと設計者が判断したのならif文書くだけだろ
それかtryするか
嫌なら全部自分で書けって
ラッパーにすぎないんだし
0990デフォルトの名無しさん
2014/10/20(月) 00:29:30.94ID:aJxqBXTUその理屈だと.NETが投げる例外の大半は余計なお世話ということだな
0991デフォルトの名無しさん
2014/10/20(月) 00:29:33.37ID:SvqxHshl線分の定義言葉遊びになるからこれ以上は何も言わない
0992デフォルトの名無しさん
2014/10/20(月) 00:33:21.87ID:QkxWZYWv仕様に違反したら例外出すことに文句があるのではなく
仕様そのものに文句があるんでしょう
MSに抗議なさい、ここで愚痴っていても始まらないでしょう
0993デフォルトの名無しさん
2014/10/20(月) 00:38:27.95ID:/31eN32g線分ならね。
連続する線分となると話が違う。
っていうか、このスレ数学オンチ多いんだねw
0994デフォルトの名無しさん
2014/10/20(月) 00:40:58.14ID:/31eN32g>>975
本当馬鹿だな。
0995デフォルトの名無しさん
2014/10/20(月) 00:51:16.17ID:7Nd6IXAf例えばゼロで除算すると例外が起きるが、
俺はtryで囲むことなんてしないし、ゼロ除算結果が7777になるっていう意味不明仕様でも構わない。
そもそもゼロで除算が起きるようなコード書かないから。
それとおんなじでどんな処理でも仕様が決まってればどうでもいい。MSDNにも多いが実際の挙動と仕様が異なるのは勘弁
0996デフォルトの名無しさん
2014/10/20(月) 00:58:23.01ID:gu/ytobqバカなのはあなたでしょ
ライブラリはアプリケーションの都合で選ぶもの
ライブラリの仕様が気に入らなえれば自分が選ばなければいい
文句を言うのは勝手だけれど、言う相手が違うよ
0997デフォルトの名無しさん
2014/10/20(月) 01:00:15.17ID:XrE7a2ru何と戦ってるんだか…
0998デフォルトの名無しさん
2014/10/20(月) 01:30:07.86ID:lmOXLRBnはよ次スレ立てろ役立たずのクソカス
0999デフォルトの名無しさん
2014/10/20(月) 05:01:50.81ID:l5ztyas01000デフォルトの名無しさん
2014/10/20(月) 05:04:32.70ID:l5ztyas010011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。