2011-04-01から1ヶ月間の記事一覧

【C#】ユーザ情報取得 ~ コンピュータ名 etc ~

■ コンピュータ名 / マシン名 構文 Environment.MachineName ■ ユーザ名 構文 Environment.UserName; サンプル http://www.atmarkit.co.jp/fdotnet/dotnettips/642displayname/displayname.html を参照のこと private string GetFullName() { // ドメイン名 …

【C#】アプリの二重起動を禁止する

方法 2つの方法がある [1] Process.GetProcessesByName()を使用する [2] Mutexを使用する サンプル [1] Process.GetProcessesByName() [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(…

【C#】Process ~ 別アプリを起動するには ~

C#

■ ほかのアプリケーションを起動するには... * Process.Start() を使用する 参考資料 http://www.atmarkit.co.jp/fdotnet/dotnettips/149procstart/procstart.html http://www.atmarkit.co.jp/fdotnet/dotnettips/211startmail/startmail.html http://uchuka…

【デザインパターン】【非同期】Active Object パターン

Active Object パターン * 並行処理のパターン * 別名 : Actor パターン 用途 * 外部から非同期にメッセージを受け取っても、自分固有のスレッドで、 自分の都合のいいタイミングで処理を実行させたい場合に利用する 処理の流れ * Client :処理を要求するス…

【C#】並列処理・Parallel

■ Parallel.For サンプル 例1 for (int x = 0; x < 100; x++) { this.MethodA(x); } private void MethodA(int counter) { // 重い処理 } 例2 // 処理1と同じ処理。ただし、非同期なので、0~100のランダムに実行される。 Parallel.For(0, 100, (x) => this.…

【C#】【GoF】Lazy&lt;T&gt;クラス ~Proxyパターンの実現~

Lazy<T>クラス * GOFのデザインパターンのProxyパターン(使用するときまで生成を遅らせる)を実現することができる * Lazy => 必要になるまでやらない 使用用途およびその例 * 重い処理、急に使用する必要がない処理に有効 【例】 * 重い画面(View)の表示 * </t>…

【C#】DataGridViewのイベントに関する単体試験

■ はじめに * NUnitFormでは、DataGridViewのイベントに関する単体試験が現状できなさそうなので、 代わりにダミークラスでDataGridViewをラップして単体試験を行う ■ サンプル http://blogs.yahoo.co.jp/dk521123/23687833.html の単体試験を行う。 コード …

【C#】【Form】DataGridView ~イベント編 ~

■ DataGridViewのイベント CellDoubleClick * セルのダブルクリックイベント 使用上の注意 * ヘッダーをダブルクリックした時も呼ばれる 【対応方法】 * 「e.RowIndex < 0」で判断する 【対応例】 private void dataGridView1_CellDoubleClick(object sender…

【デザインパターン】Mediatorパターン

■ はじめに GOF の デザインパターンの内のMediatorパターンをメモ。 ■ Mediator(調停者) * オブジェクト間の複雑な協調関係を 集中管理するオブジェクトを定義する。 * これによりオブジェクト同士の結合度を弱め、 柔軟性を保つことができる。 参考文献 ht…

【SQL】SQLのコメント文あれこれ

SQL

■ はじめに SQLのコメント文について扱う 目次 【1】コメント文 1)「--」 2)「/* */」 【2】テーブルに関するコメント文 1)テーブルのコメントを付ける 2)項目のコメントを付ける 【3】サンプル 【1】コメント文 1)「--」 * 一行コメント 2…

【C#】DateTime / TimeSpan ~ 日時 / 時間の扱いについて ~

C#

■ DateTime 日時 => 日付にする Date で日時を「00:00:00.000」にしてくれる(便利) // 2011/04/13 0:00:00 this.label1.Text = DateTime.Now.Date.ToString(); ■ TimeSpan * 時間の差の扱い 実装例 サンプルのように記述する方法もあるし、以下のように1行で…

【C#】【Form】PictureBox [1] ~ 画像を表示する ~

■ PictureBox * 画像を表示する ■ 主なプロパティ ImageLocation * 画像ファイルまでのパスを指定 SizeMode * 画像の配置方法を指定 `#`プロパティ値説明 01StretchImagePictureBoxの大きさいっぱいに画像が表示されるように、拡大縮小表示 02Zoom画像のサイ…

【C#】Delegate / Event ~ Action デリゲート ~

C#

■ はじめに https://dk521123.hatenablog.com/entry/2010/12/12/164101 https://dk521123.hatenablog.com/entry/2010/12/25/221009 https://dk521123.hatenablog.com/entry/2010/10/22/101350 の続き。 ■ Action デリゲート Actinの意味 ・T型の引数を1つ、…