「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■関連スレ
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part138
https://mevius.5ch.net/test/read.cgi/tech/1528194762/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■情報源
https://msdn.microsoft.com/ja-jp/library/gg145045.aspx
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://msdn.microsoft.com/en-us/library/gg145045.aspx
http://referencesource.microsoft.com/
探検
ふらっと C#,C♯,C#(初心者用) Part139
■ このスレッドは過去ログ倉庫に格納されています
2018/08/05(日) 19:55:44.50ID:tZmoj8I+
21デフォルトの名無しさん
2018/08/12(日) 01:49:29.47ID:YrPOuymD publicメンバの変数名全部小文字にしちゃった
後任の人ごめんね
後任の人ごめんね
22デフォルトの名無しさん
2018/08/12(日) 02:08:24.17ID:23yIPh0T visuakstudioでクラスを追加したあと関連づける方法がわかりません
どうすれば良いでしょうか?
Form1.cs
namespace neko
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(testtext);
}
}
}
test.cs
namespace neko
{
class test
{
string testtext ="表示";
}
}
どうすれば良いでしょうか?
Form1.cs
namespace neko
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(testtext);
}
}
}
test.cs
namespace neko
{
class test
{
string testtext ="表示";
}
}
23デフォルトの名無しさん
2018/08/12(日) 02:14:07.60ID:YrPOuymD test t = new test();
MessageBox.Show(t.testtext);
もしくは
MessageBox.Show(test.testtext);
class test
{
static string testtext ="表示";
}
MessageBox.Show(t.testtext);
もしくは
MessageBox.Show(test.testtext);
class test
{
static string testtext ="表示";
}
2018/08/12(日) 02:16:01.58ID:06lg+uZn
>>22
オブジェクト、クラス、インスタンスの言葉の意味
https://dobon.net/vb/dotnet/beginner/classinstance.html
アクセス修飾子 (C# リファレンス)
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/keywords/access-modifiers
オブジェクト、クラス、インスタンスの言葉の意味
https://dobon.net/vb/dotnet/beginner/classinstance.html
アクセス修飾子 (C# リファレンス)
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/keywords/access-modifiers
25デフォルトの名無しさん
2018/08/12(日) 02:32:17.74ID:23yIPh0T26デフォルトの名無しさん
2018/08/12(日) 02:45:33.22ID:23yIPh0T インスタンス作成を書かずに済ます方法はないのでしょうか?
usingを使用したりです
2つ以上のファイルに分けてコードを書きたいのが目的です。
MessageBoxがusing System.Windows.Forms;で参照している様なのと同じように書きたいです
usingを使用したりです
2つ以上のファイルに分けてコードを書きたいのが目的です。
MessageBoxがusing System.Windows.Forms;で参照している様なのと同じように書きたいです
2018/08/12(日) 02:57:30.97ID:wouDTZ9z
俺流を考えるのは一通り基礎を理解してからで遅くないからw
28デフォルトの名無しさん
2018/08/12(日) 03:02:44.64ID:61mYfpvC まずは黙って感謝の1日1万行写経しなさいな
29デフォルトの名無しさん
2018/08/12(日) 03:08:45.87ID:23yIPh0T2018/08/12(日) 08:54:02.49ID:3UTFG/IT
>>21
プロパティのこと?それともフィールドをpublicにしちゃったの?
プロパティのこと?それともフィールドをpublicにしちゃったの?
2018/08/12(日) 17:47:13.24ID:29Ctg7zJ
メッセージボックスを出して押されたボタンに対応するメッセージをラベルに表示する簡単なプログラムなんですがswitchでかけるのは解ったんですがifでかくとどうなりますか?
ちなみにソースとアプリの画面はこんな感じです。
http://fast-uploader.com/transfer/7089619124517.jpg
var x = MessageBox.Show("メッセージ", "タイトル", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Asterisk);
switch (x)
{
case DialogResult.Yes:
label1.Text = "はいが押されました。";
break;
case DialogResult.No:
label1.Text = "いいえが押されました。";
break;
default:
label1.Text = "キャンセルされました";
break;
}
ちなみにソースとアプリの画面はこんな感じです。
http://fast-uploader.com/transfer/7089619124517.jpg
var x = MessageBox.Show("メッセージ", "タイトル", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Asterisk);
switch (x)
{
case DialogResult.Yes:
label1.Text = "はいが押されました。";
break;
case DialogResult.No:
label1.Text = "いいえが押されました。";
break;
default:
label1.Text = "キャンセルされました";
break;
}
2018/08/12(日) 17:57:27.20ID:VB6uTYfX
>>31
var x = MessageBox.Show("メッセージ", "タイトル", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Asterisk);
if (x==DialogResult.Yes) label1.Text = "はいが押されました。";
else if (x==case DialogResult.No) label1.Text = "いいえが押されました。";
else label1.Text = "キャンセルされました";
var x = MessageBox.Show("メッセージ", "タイトル", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Asterisk);
if (x==DialogResult.Yes) label1.Text = "はいが押されました。";
else if (x==case DialogResult.No) label1.Text = "いいえが押されました。";
else label1.Text = "キャンセルされました";
2018/08/12(日) 18:06:12.77ID:29Ctg7zJ
2018/08/12(日) 18:09:32.01ID:29Ctg7zJ
どこか書き間違えてたんですねきっと。ありがとうございました
2018/08/12(日) 19:30:52.63ID:U04Z7MLo
フィールドはパブリックにしないほうがいいよ
理由は調べれば出てくる
理由は調べれば出てくる
2018/08/13(月) 10:12:06.70ID:JI1vIyZs
AxWindowsMediaPlayer をフォームに貼り付けていろいろやっているんですが、
MediaPlayer に予め設定されているキーボードショートカットを無効化する方法はないでしょうか。
まちがえて押してしまって暴発する他、Ctrl + F などの登録されているキーに
別の機能を割り当てたいのですが、MediaPlayerのKeypressイベントで e.handled がtrueにされてしまっているのか
フォームのKeyPressイベントが呼ばれないようです。
MediaPlayer に予め設定されているキーボードショートカットを無効化する方法はないでしょうか。
まちがえて押してしまって暴発する他、Ctrl + F などの登録されているキーに
別の機能を割り当てたいのですが、MediaPlayerのKeypressイベントで e.handled がtrueにされてしまっているのか
フォームのKeyPressイベントが呼ばれないようです。
2018/08/13(月) 14:06:18.33ID:8S8/2I2z
>>36
フォームでキーイベントを全部受けたいだけならフォームのKeyPreviewプロパティをtrue
フォームでキーイベントを全部受けたいだけならフォームのKeyPreviewプロパティをtrue
2018/08/13(月) 20:52:46.66ID:JI1vIyZs
>>37
もちろんそれはやっています
というかKeyPreviewをtrueにしないとForm.Keypressイベントは発生しないものだと
思っていたのですが、勘違いでしょうか。
MediaPlayerに登録されていないらしいキーの組み合わせについてはちゃんとイベントが発生しています。
ところでKeyPressなどのイベントでは受け取ったキーがhandleされないときは別のコントロールのKeyPressイベントに
値が渡されているみたいですが、その順番はどういうルールに基づくのかご存じないでしょうか。
Keypress 順番 などでググってみても KeyDown の後にKeypressが起こる云々しかでてこないのですが。
もちろんそれはやっています
というかKeyPreviewをtrueにしないとForm.Keypressイベントは発生しないものだと
思っていたのですが、勘違いでしょうか。
MediaPlayerに登録されていないらしいキーの組み合わせについてはちゃんとイベントが発生しています。
ところでKeyPressなどのイベントでは受け取ったキーがhandleされないときは別のコントロールのKeyPressイベントに
値が渡されているみたいですが、その順番はどういうルールに基づくのかご存じないでしょうか。
Keypress 順番 などでググってみても KeyDown の後にKeypressが起こる云々しかでてこないのですが。
2018/08/13(月) 22:26:49.67ID:iMw9ATb1
FormにIFilterMessage実装して、PreFilterMessageで
WM_KEYDOWN/WM_KEYUPのときActiveControlがAxWindowsMediaPlayerなら
false返せばAxWindowsMediaPlayerには渡らなくなる
Formの方で受け取りたいならついでにOnKeyDown/OnKeyUp呼び出す
WinFormにはルーティングイベントなんてないから別のコントロールが受け取るとかないはずだけど
KeyPreviewしてるFormが先に受け取るとかぐらいで
どういうコントロール構成とイベントハンドラにしたら再現できる?
WM_KEYDOWN/WM_KEYUPのときActiveControlがAxWindowsMediaPlayerなら
false返せばAxWindowsMediaPlayerには渡らなくなる
Formの方で受け取りたいならついでにOnKeyDown/OnKeyUp呼び出す
WinFormにはルーティングイベントなんてないから別のコントロールが受け取るとかないはずだけど
KeyPreviewしてるFormが先に受け取るとかぐらいで
どういうコントロール構成とイベントハンドラにしたら再現できる?
2018/08/14(火) 00:17:13.29ID:cUGYJeNz
なんか違和感あると思ったらIMessageFilterだった
あとFormのコンストラクタあたりでApplication.AddMessageFilter(this)する必要あり
あとFormのコンストラクタあたりでApplication.AddMessageFilter(this)する必要あり
41デフォルトの名無しさん
2018/08/16(木) 20:46:30.44ID:CMBG5Zb1 以下のようなコードでITestにList<Hoge>とList<Fuga>を併記するような書き方はあるでしょうか?
public class Fuga{ public string val { get; set; } }
public class Hoge{ public string val { get; set; } }
interface ITest{ List<Hoge> Hogege(); }
public class A : ITest
{
public List<Hoge> Hogege()
{
return null;
}
}
public class B : ITest
{
public List<Fuga> Hogege()
{
return null;
}
}
class Program
{
static void Main(string[] args)
{
ITest AB;
AB = new A();
AB = new B();
}
}
public class Fuga{ public string val { get; set; } }
public class Hoge{ public string val { get; set; } }
interface ITest{ List<Hoge> Hogege(); }
public class A : ITest
{
public List<Hoge> Hogege()
{
return null;
}
}
public class B : ITest
{
public List<Fuga> Hogege()
{
return null;
}
}
class Program
{
static void Main(string[] args)
{
ITest AB;
AB = new A();
AB = new B();
}
}
42デフォルトの名無しさん
2018/08/16(木) 20:54:09.65ID:ypHiACds Stringですか?
stringですか?
stringですか?
2018/08/16(木) 21:10:05.62ID:cTYLky9x
併記ってどういうこと?
2018/08/16(木) 21:12:25.13ID:AjFj7Rns
2018/08/16(木) 21:35:49.30ID:KqrlVipO
4641
2018/08/16(木) 21:47:02.98ID:CMBG5Zb1 理解が乏しく説明が拙くてすみません
インターフェースを以下のように書く方法があれば良いなと思った次第です
interface ITest{ List<共通or抽象化したクラス記述> Hogege(); }
どうも無理そうな雰囲気を感じておりますが
お願い致します
インターフェースを以下のように書く方法があれば良いなと思った次第です
interface ITest{ List<共通or抽象化したクラス記述> Hogege(); }
どうも無理そうな雰囲気を感じておりますが
お願い致します
2018/08/16(木) 21:55:43.81ID:cTYLky9x
FugaとHogeになんらかの関係がないとどうにもならないよ
どちらかが継承してるとか共通のinterfaceを実装してるとか
あるいはITestをジェネリックにするか この場合Mainの方のコード書けないけど
あとは型安全なんか投げ捨ててdynamicにするか、ってのはジョークだけど
どちらかが継承してるとか共通のinterfaceを実装してるとか
あるいはITestをジェネリックにするか この場合Mainの方のコード書けないけど
あとは型安全なんか投げ捨ててdynamicにするか、ってのはジョークだけど
4841
2018/08/16(木) 22:26:51.44ID:CMBG5Zb1 たびたび失礼します
こんなコードを書いた動機としては、class A と class B のメソッドの違いが
返り値のList<xxx>でしかないため、インターフェースで共通の型に出来たら
mainでインスタンス作る際にスッキリするなと思ったからです
こんな記述が無理そうな時点でC#の考えに則って無いんだろうなと感じております
public class A : ITest
{
public List<Hoge> Hogege()
{
return null;
}
}
public class B : ITest
{
public List<Fuga> Hogege()
{
return null;
}
}
こんなコードを書いた動機としては、class A と class B のメソッドの違いが
返り値のList<xxx>でしかないため、インターフェースで共通の型に出来たら
mainでインスタンス作る際にスッキリするなと思ったからです
こんな記述が無理そうな時点でC#の考えに則って無いんだろうなと感じております
public class A : ITest
{
public List<Hoge> Hogege()
{
return null;
}
}
public class B : ITest
{
public List<Fuga> Hogege()
{
return null;
}
}
2018/08/16(木) 23:17:36.51ID:4LOkjF+G
何度もみんな言っている通りAとBじゃなくてHogeとFugaでなんとかしろって話だと思うんだが、なんでそんな頑なにAとBにこだわるの?
50デフォルトの名無しさん
2018/08/16(木) 23:23:32.70ID:sGlIzl1X Hage Tsuru Pika
51デフォルトの名無しさん
2018/08/17(金) 00:12:00.44ID:bI0Dxrf9 アドバイスを基にこの記述で行けるか!と思ったのですがreturn hoge;でList<IStore>でないとダメと怒られました
素人のぬか喜びでした
public interface IStore
{
}
public class Fuga: IStore
{
public string val { get; set; }
}
public class Hoge: IStore
{
public int val { get; set; }
}
public interface ITest
{
List<IStore> Hogege();
}
public class A : ITest
{
public List<IStore> Hogege()
{
List<Hoge> hoge = new List<Hoge>();
hoge.Add(new Hoge { val = 1 });
return hoge; //エラー
}
}
素人のぬか喜びでした
public interface IStore
{
}
public class Fuga: IStore
{
public string val { get; set; }
}
public class Hoge: IStore
{
public int val { get; set; }
}
public interface ITest
{
List<IStore> Hogege();
}
public class A : ITest
{
public List<IStore> Hogege()
{
List<Hoge> hoge = new List<Hoge>();
hoge.Add(new Hoge { val = 1 });
return hoge; //エラー
}
}
2018/08/17(金) 00:24:38.97ID:ceNJ30ox
visualstudioをインストールしました
参考書にはWindowsフォームアプリケーションやコンソールアプリケーションなどあるんですが、インストールしたvisualstudioには見当たらないです
何が設定かインストールし忘れたのでしょうか?
参考書にはWindowsフォームアプリケーションやコンソールアプリケーションなどあるんですが、インストールしたvisualstudioには見当たらないです
何が設定かインストールし忘れたのでしょうか?
2018/08/17(金) 00:50:04.81ID:PFV80D0U
>>52
VisualStudioのスレで聞くべきだけど、その前にどのバージョンをインストールしたか把握している?
VS2017ならスタートページで「新しいプロジェクトの作成」をクリックするかメニューのファイル>新規作成>プロジェクト
VisualStudioのスレで聞くべきだけど、その前にどのバージョンをインストールしたか把握している?
VS2017ならスタートページで「新しいプロジェクトの作成」をクリックするかメニューのファイル>新規作成>プロジェクト
2018/08/17(金) 17:33:16.91ID:ceNJ30ox
>>53
すみません、C#の話でしたのでこちらに書き込んでしまいました
visualstudioのバージョンは2017です
それで、visualstudio起動後のファイル>プロジェクト>新しいプロジェクト内に存在しないんですよね…
あるのは空のアプリ、WPFアプリ、Windowsランタイムコンポーネント、クラスライブラリのみでした
すみません、C#の話でしたのでこちらに書き込んでしまいました
visualstudioのバージョンは2017です
それで、visualstudio起動後のファイル>プロジェクト>新しいプロジェクト内に存在しないんですよね…
あるのは空のアプリ、WPFアプリ、Windowsランタイムコンポーネント、クラスライブラリのみでした
2018/08/17(金) 17:55:13.19ID:tlmPPTdZ
http://image.itmedia.co.jp/ait/articles/1704/10/dt-01.gif
http://image.itmedia.co.jp/ait/articles/1704/10/dt-05.gif
Windowsクラシックデスクトップって奴だと思うけどそれは分かってる?
インストール時に選択してないなら知らんけど
http://image.itmedia.co.jp/ait/articles/1704/10/dt-05.gif
Windowsクラシックデスクトップって奴だと思うけどそれは分かってる?
インストール時に選択してないなら知らんけど
2018/08/17(金) 18:00:12.39ID:PWcnU2kA
WPF入っているのにWinフォームとコンソールアプリ入っていないって何か変なことやっていそう
インストーラーでそれっぽいの入れなおしてそれでもだめなら素直に専用スレ行けばいい
インストーラーでそれっぽいの入れなおしてそれでもだめなら素直に専用スレ行けばいい
2018/08/18(土) 13:00:11.77ID:XAZ8inQ9
Windows 7はデフォでFW 3.5が入ってて
WIndows Updateを適当に入れてけば今サポートされてる最古のFW 4.5.2になるって認識でOKですか?
それともWindows UpdateするだけではFWは更新されない?
WIndows Updateを適当に入れてけば今サポートされてる最古のFW 4.5.2になるって認識でOKですか?
それともWindows UpdateするだけではFWは更新されない?
2018/08/18(土) 14:06:53.55ID:CVV71Jnt
fwって何だファームウェアか
2018/08/18(土) 14:11:43.31ID:piDfOcEW
ここ言語スレなんだよなあ
>>57
http://www.atmarkit.co.jp/ait/articles/0910/15/news116.html
https://docs.microsoft.com/ja-jp/dotnet/framework/install/on-windows-7
Windows7で4.0以降はOSのアップデートに入らない。OSのスレで聞いてくれ
>>57
http://www.atmarkit.co.jp/ait/articles/0910/15/news116.html
https://docs.microsoft.com/ja-jp/dotnet/framework/install/on-windows-7
Windows7で4.0以降はOSのアップデートに入らない。OSのスレで聞いてくれ
2018/08/18(土) 14:15:04.34ID:63PJyp6j
いちいち交通整理くっだらねアホか
こういう馬鹿、自分が質問者以上にスレと関係ないことをほざいてる自覚がないらしい。
そもそも馬鹿は自分を客観視できないからな
こういう馬鹿、自分が質問者以上にスレと関係ないことをほざいてる自覚がないらしい。
そもそも馬鹿は自分を客観視できないからな
2018/08/18(土) 14:29:01.60ID:bu3iHsiJ
>>60
おまえそれどのレスに対して言ってんの?
おまえそれどのレスに対して言ってんの?
2018/08/18(土) 15:08:10.60ID:CVV71Jnt
前スレにもいた客観視君か
九官鳥みたいだな
九官鳥みたいだな
63デフォルトの名無しさん
2018/08/18(土) 15:27:59.00ID:AFavdKXG 前から誰のこと言ってるのか知らんけど、この意味不明な粘着質、普通にストーカーと同じメンタルだ
2018/08/18(土) 17:48:26.71ID:pAmB63kN
>>58
(.Net) Frame Work だろ
(.Net) Frame Work だろ
65デフォルトの名無しさん
2018/08/18(土) 18:22:34.56ID:m2/0Uqcq FWって初めて聞いたわ。.NETと一般的な名称使わずにオレオレ略語使う奴って頭悪そう
2018/08/18(土) 18:36:09.82ID:rpJq+M3x
C# スレで FW 3.5 って来たら候補は一つしか無い
2018/08/18(土) 18:38:11.71ID:PMPVVek/
2018/08/18(土) 18:55:10.22ID:bESODcUh
ファーム
2018/08/18(土) 18:59:38.07ID:y78sZYS/
70デフォルトの名無しさん
2018/08/18(土) 21:05:24.91ID:XoXRtiM1 VISUALSTUDIOのバージョンとC#のバージョンの対応関係ってどこかに一覧表ない?
71デフォルトの名無しさん
2018/08/18(土) 21:45:53.66ID:m2/0Uqcq あるよ
72デフォルトの名無しさん
2018/08/18(土) 21:50:46.39ID:IgqCTt2j あるわけないだろ
2018/08/18(土) 22:02:40.56ID:y78sZYS/
2018/08/18(土) 22:09:57.24ID:G1cg7QSD
Firewallやろ
2018/08/19(日) 08:12:36.40ID:k1wUp59c
>>73
サンクス!
サンクス!
76デフォルトの名無しさん
2018/08/19(日) 20:03:15.69ID:WKvykaAV PostgreSQLからデータ抽出したいんだけど
何を使えばいいですか?
データの更新追加削除もします
何を使えばいいですか?
データの更新追加削除もします
2018/08/19(日) 20:06:52.16ID:/xcR5TgM
google
2018/08/19(日) 20:07:06.44ID:mWLpYff3
>>76
Dapper
Dapper
79デフォルトの名無しさん
2018/08/19(日) 20:29:51.81ID:WKvykaAV >>78
Npgsqlってのは駄目なの?
Npgsqlってのは駄目なの?
2018/08/19(日) 20:39:13.05ID:mWLpYff3
>>79
ADO.NET感覚でDataReaderやDataSet使いたいならそれでもいいと思うけど、今更感あるような
ADO.NET感覚でDataReaderやDataSet使いたいならそれでもいいと思うけど、今更感あるような
2018/08/19(日) 20:47:54.16ID:ztvlDXyo
83デフォルトの名無しさん
2018/08/19(日) 22:25:18.22ID:WKvykaAV メッソッドってregionで囲むもんなん?
これアウトライン用よね?
これアウトライン用よね?
84デフォルトの名無しさん
2018/08/19(日) 22:33:16.81ID:NgDo0XDZ 冗長なコード書くやつは畳みたいんだろう
2018/08/19(日) 22:43:06.20ID:Qn4G0bqC
畳みたくなるような長いクラスは書かない
86デフォルトの名無しさん
2018/08/19(日) 22:44:46.22ID:WKvykaAV2018/08/19(日) 23:10:34.65ID:0oWhlzQ+
全ての機能をFormに
2018/08/19(日) 23:19:59.25ID:hDKgqoRf
俺はregionによる仕分け多用するけど一般的な習慣とまでは言えないね
でも、単純にプロパティ、メソッド、イベント(OnXxxx)、コンストラクタに分類するだけでも
少なくとも視覚的な見やすさはだいぶ違うと思うよ
MSDNライブラリのクラスメンバー一覧がそういう分類じゃなく単純にアルファベット順だったら
どうか想像すりゃ分かると思うけど
でも、単純にプロパティ、メソッド、イベント(OnXxxx)、コンストラクタに分類するだけでも
少なくとも視覚的な見やすさはだいぶ違うと思うよ
MSDNライブラリのクラスメンバー一覧がそういう分類じゃなく単純にアルファベット順だったら
どうか想像すりゃ分かると思うけど
2018/08/20(月) 20:47:47.03ID:4Ys3BH8f
複数のメソッドをregionで囲むはまだ許せるが、くそ長いメソッドの一部をregionで囲って短く見せるのは許せない
2018/08/20(月) 21:12:28.08ID:dwFWVIwC
>くそ長いメソッドの一部をregionで囲って短く見せる
海外サイトでサンプル漁ってると時々見かけるな
海外サイトでサンプル漁ってると時々見かけるな
91デフォルトの名無しさん
2018/08/20(月) 21:18:42.69ID:7wKYHqTA まあアウトラインってスコープ単位で線引されるからね
regionは昔の機能と思っていいよ
regionは昔の機能と思っていいよ
2018/08/20(月) 21:21:04.27ID:Uo4wU7xn
メソッドはregionで囲まなくても普通に畳めるよww
93デフォルトの名無しさん
2018/08/20(月) 21:23:33.78ID:7wKYHqTA >>92
畳めるけどメソッドをregionで囲ってるソースみること結構あるわ
畳めるけどメソッドをregionで囲ってるソースみること結構あるわ
94デフォルトの名無しさん
2018/08/20(月) 21:23:49.70ID:7wKYHqTA ホント謎
2018/08/20(月) 21:41:03.34ID:UWgl1tII
メソッド単位で囲ってるのは俺も謎だと思ってた
昔は普通にたたむのできなくてその名残とかなのかもしかして普通にたためるの知らないのか
昔は普通にたたむのできなくてその名残とかなのかもしかして普通にたためるの知らないのか
2018/08/20(月) 21:43:29.04ID:/2kqdAhT
メソッドで畳めないIDE使ってるとか?
2018/08/20(月) 21:45:48.75ID:1JpQrvUt
IEnumerable、IDisposable、IEquatableみたいな定型インターフェイスの実装は邪魔なんでregionで括ってるわ
あとToStringやらGetHashCodeのオーバーライドなんかも
あとToStringやらGetHashCodeのオーバーライドなんかも
2018/08/20(月) 21:50:55.75ID:DUHqVJSw
>>97
.NET Frameworkのライブラリと同じように作らなきゃいけないと勘違いしてた頃は俺もそれやってた
アプリと不特定多数向けのライブラリは作り方が違ってていい、アプリはなるべく絞り込んで作るのがよい、
ということを理解してからは無駄なコードが減って必要なくなった
.NET Frameworkのライブラリと同じように作らなきゃいけないと勘違いしてた頃は俺もそれやってた
アプリと不特定多数向けのライブラリは作り方が違ってていい、アプリはなるべく絞り込んで作るのがよい、
ということを理解してからは無駄なコードが減って必要なくなった
2018/08/20(月) 22:10:27.90ID:FTwuHoIr
不特定多数向けのライブラリを作ってるのかもしれないだろ
100デフォルトの名無しさん
2018/08/20(月) 23:12:34.39ID:4xbzQ56O IDisposableはusing使うために必須だからなあ
101デフォルトの名無しさん
2018/08/21(火) 00:18:54.40ID:oo1eFPzK HttpClientみたいにsession繋ぎっぱなしが推奨されてるのにusing使う奴
102デフォルトの名無しさん
2018/08/21(火) 00:23:49.00ID:2/I2BB9Y >>101
なんでそのルールをセッション繋ぎっぱなしが推奨されないものにまで適用しなきゃいけないの?
なんでそのルールをセッション繋ぎっぱなしが推奨されないものにまで適用しなきゃいけないの?
103デフォルトの名無しさん
2018/08/21(火) 00:27:03.72ID:2ZNryZEm ここで聞くことでもないんだけど適当に意見くだせえ
仮に外部設計書・内部設計書・詳細設計書が必要として、
詳細設計書は別ファイルで作成するよりxmlドキュメントコメント使って生成したxmlファイル使った方がよっぽどいいよね?
仮に外部設計書・内部設計書・詳細設計書が必要として、
詳細設計書は別ファイルで作成するよりxmlドキュメントコメント使って生成したxmlファイル使った方がよっぽどいいよね?
104デフォルトの名無しさん
2018/08/21(火) 00:40:44.14ID:lLRe5osi105デフォルトの名無しさん
2018/08/21(火) 00:46:11.78ID:Fn3PsyHg >>102
日本語読めます?
日本語読めます?
106デフォルトの名無しさん
2018/08/21(火) 00:50:51.67ID:1ei+2zpw 最初の設計がおかしかったからこんなことになった
using使えるような新しいライブラリを出してこないMSが悪い
pythonだったらpython的でないと言う理由で新しいライブラリが出てくる
using使えるような新しいライブラリを出してこないMSが悪い
pythonだったらpython的でないと言う理由で新しいライブラリが出てくる
107デフォルトの名無しさん
2018/08/21(火) 01:07:05.30ID:krr9M76P >>101
ファイルの利用が終わったのにすぐにファイルハンドルを解放しないとか不便でしょうが
ファイルの利用が終わったのにすぐにファイルハンドルを解放しないとか不便でしょうが
108デフォルトの名無しさん
2018/08/21(火) 01:46:45.25ID:2ZNryZEm >>104
ドキュメントコメントは内部設計なの?
サイトによって言ってること違って混乱してる
内部設計書=詳細設計書と書いてるところもあれば、
内部設計書=複数の処理の流れ、詳細設計書=ドキュメントコメントってところもある
自然言語でコード書いた奴は見当違いで本来必要の無い何かって認識だった。会社と人によって違うのかな
ドキュメントコメントは内部設計なの?
サイトによって言ってること違って混乱してる
内部設計書=詳細設計書と書いてるところもあれば、
内部設計書=複数の処理の流れ、詳細設計書=ドキュメントコメントってところもある
自然言語でコード書いた奴は見当違いで本来必要の無い何かって認識だった。会社と人によって違うのかな
109デフォルトの名無しさん
2018/08/21(火) 02:00:13.53ID:lLRe5osi >>108
詳細設計はCOBOL時代の名残りだ
パンチカードや80x24文字の画面でコーディングしてた頃はソースコードは純粋なアウトプットであり、
ソース上で試行錯誤したりソース眺めながらコミュニケーションしたりするなんていう発想は無かったの
プログラミングはタイピングの前に完了していなければならず、詳細設計を作成することこそが今でいうコーディング工程そのものだったんだよ
本来全く必要のないもの、でまさに正しいんだよ
詳細設計はCOBOL時代の名残りだ
パンチカードや80x24文字の画面でコーディングしてた頃はソースコードは純粋なアウトプットであり、
ソース上で試行錯誤したりソース眺めながらコミュニケーションしたりするなんていう発想は無かったの
プログラミングはタイピングの前に完了していなければならず、詳細設計を作成することこそが今でいうコーディング工程そのものだったんだよ
本来全く必要のないもの、でまさに正しいんだよ
110デフォルトの名無しさん
2018/08/21(火) 02:01:33.41ID:NrpzP/Hk >>106
HttpClientFactoryも知らないおじいちゃんこんにちは
HttpClientFactoryも知らないおじいちゃんこんにちは
111デフォルトの名無しさん
2018/08/21(火) 07:18:27.76ID:K3bJIWvH112デフォルトの名無しさん
2018/08/21(火) 09:21:19.00ID:6+/Jo0uy 設計書ネタはスレちがくね?
113デフォルトの名無しさん
2018/08/21(火) 09:58:08.14ID:eCXr2PsD 質問者すらそう言ってるが
言及したがりのバカが沸いたからしゃーない
言及したがりのバカが沸いたからしゃーない
114デフォルトの名無しさん
2018/08/21(火) 10:26:32.76ID:UjHMgN47 しかも最初の疑問点からずれた話題だけを掘り下げるという意味不明な状態
115デフォルトの名無しさん
2018/08/22(水) 12:27:18.26ID:DYb1gEuJ Win32API関数でのエラー処理について質問です
var DllFilePath = "hogehoge.dll";
handle = LoadLibrary(DllFilePath);
if (handle == IntPtr.Zero)
{
throw new System.ComponentModel.Win32Exception();
}
↑のコードで例外をthrowするときに例外のMessageにDllFilePathの値を追加したいのですが
throw new System.ComponentModel.Win32Exception(DllFilePath)
とすると本来のエラーメッセージが上書きされてしまいます。
var DllFilePath = "hogehoge.dll";
try
{
handle = LoadLibrary(DllFilePath);
if (handle == IntPtr.Zero)
{
throw new System.ComponentModel.Win32Exception();
}
}
catch(System.ComponentModel.Win32Exception e)
{
throw new System.ComponentModel.Win32Exception($"{e.Message} \"{DllFileName}\"", e);
}
こうすれば期待通りの内容にできるのですがAPI呼び出しの度に例外処理を書くのは
コードが冗長になってしまうし何より面倒なのでうまいこと簡単に書けないか悩んでいます。
何かいい方法は無いですかね?
var DllFilePath = "hogehoge.dll";
handle = LoadLibrary(DllFilePath);
if (handle == IntPtr.Zero)
{
throw new System.ComponentModel.Win32Exception();
}
↑のコードで例外をthrowするときに例外のMessageにDllFilePathの値を追加したいのですが
throw new System.ComponentModel.Win32Exception(DllFilePath)
とすると本来のエラーメッセージが上書きされてしまいます。
var DllFilePath = "hogehoge.dll";
try
{
handle = LoadLibrary(DllFilePath);
if (handle == IntPtr.Zero)
{
throw new System.ComponentModel.Win32Exception();
}
}
catch(System.ComponentModel.Win32Exception e)
{
throw new System.ComponentModel.Win32Exception($"{e.Message} \"{DllFileName}\"", e);
}
こうすれば期待通りの内容にできるのですがAPI呼び出しの度に例外処理を書くのは
コードが冗長になってしまうし何より面倒なのでうまいこと簡単に書けないか悩んでいます。
何かいい方法は無いですかね?
116デフォルトの名無しさん
2018/08/22(水) 12:58:43.22ID:GmRbaMy/ >>115
Win32Exceptionを継承して使う
Win32Exceptionを継承して使う
117デフォルトの名無しさん
2018/08/22(水) 13:00:35.25ID:Ua1FlSB5 >>115
public class LoadLibraryFailedException : Win32Exception
{
public LoadLibraryFailedException (string path)
{ DllPath = path; }
public string DllPath {get; private set; }
...
}
public class LoadLibraryFailedException : Win32Exception
{
public LoadLibraryFailedException (string path)
{ DllPath = path; }
public string DllPath {get; private set; }
...
}
118デフォルトの名無しさん
2018/08/22(水) 14:32:10.34ID:DYb1gEuJ Messageに情報を足すことばかりが頭にあって
情報を別のプロパティに持たせる発想がなかった…
こっちのほうがcatchする側で融通が利かせやすいし
クラスやプロパティの名前を調整すればLoadLibraryに限らず
他のAPI呼び出しにも汎用的に使えそうでいいですね
この方法で検討してみます。ありがとうございました
情報を別のプロパティに持たせる発想がなかった…
こっちのほうがcatchする側で融通が利かせやすいし
クラスやプロパティの名前を調整すればLoadLibraryに限らず
他のAPI呼び出しにも汎用的に使えそうでいいですね
この方法で検討してみます。ありがとうございました
119デフォルトの名無しさん
2018/08/23(木) 11:52:17.79ID:+a3jfYk1 すんません初歩駅な質問なんですが
フォームアプリのコントロールに
ボリュームやスライダーのような可変データコントロールは無いのでしょうか?
似たのはNumericUpDownがありますが・・・
これの画像を差し替えてボリューム風にしろってことですか?
フォームアプリのコントロールに
ボリュームやスライダーのような可変データコントロールは無いのでしょうか?
似たのはNumericUpDownがありますが・・・
これの画像を差し替えてボリューム風にしろってことですか?
120デフォルトの名無しさん
2018/08/23(木) 12:20:54.20ID:Qdf2BjgW >>119
トラックバー
トラックバー
121デフォルトの名無しさん
2018/08/23(木) 12:40:46.09ID:+a3jfYk1 >>120
おお!「コモンコントロール」にも他カテゴリにも無いコントロールがあったのか!
完全に見落としてました
ところでこれの画像を差し替えて丸型回転ノブにすることはできるんでしょうか?
まだ勉強不足でよくわかってないのですが
Imageプロパティとか無いからできないかな?
おお!「コモンコントロール」にも他カテゴリにも無いコントロールがあったのか!
完全に見落としてました
ところでこれの画像を差し替えて丸型回転ノブにすることはできるんでしょうか?
まだ勉強不足でよくわかってないのですが
Imageプロパティとか無いからできないかな?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★2 [ぐれ★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 【維新】吉村知事「中国人観光客だけに頼るビジネスモデル変えていかないといけない」「高市総理の発言は撤回する必要はない」 [Hitzeschleier★]
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 【実況】博衣こよりのえちえち歌枠🧪
- 高市「発言は撤回しない。謝罪もするな。外務省局長!任せたぞ。」👈なにをさせたかったの?😲 [826239858]
- 【速報】51歳まで自衛隊になれるように法改正ww [347751896]
- 外務省局長、よくわからないまま帰国へ [834922174]
- 自分に自信がない女の子、陽キャ美容室で80cmのエクステを付けた結果wwwwwwwwwwwwwwwwwww [329329848]
