c#

コンピュータ

dotnet.exeでプリプロセッサのシンボルを定義するには。.csproj編集

.csprojにDefineConstantsでシンボルを定義します。csprojのサンプル<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputT...
コンピュータ

dotnet.exeでC#の単独ソースファイルを実行できないか模索する

プロジェクトを作らずにdotnet runで単独のcsファイルが実行できると便利なので方法を調べましたが見つかりませんでした。仕方がないのでプロジェクトを自動作成するPowerShellスクリプトを作成してみました。ファイル名:Run-CS...
コンピュータ

C#で単独ファイルで実行できるexeファイルをつくるdotnet.exeのオプション

C#のコンソールプロジェクトでコマンドプロンプト又はPowerShellから実行できる外部コマンドを作成しようと思います。通常にビルドを行うと、実行するバイナリファイルの.exe以外に実行に必要となる.dllファイルが生成されます。複数のフ...
スポンサーリンク
コンピュータ

C#でデザインパターン「Interpreterパターン」

Interpreterパターンを検索すると、四則演算をしているサンプルが多く見つかったので、それに倣いなるべくシンプルに加算をするコードを作成してみました。// Interpreterパターン// インタフェースinterface IExp...
コンピュータ

C#でデザインパターン「Chain of Responsibility」

「Chain of Responsibility」要求を処理できるオブジェクトを連鎖させ、要求を順に渡していくパターンだそうです。サンプルプログラムで確認してみたいと思います。ソースコード// 要求を処理するインターフェースinterfac...
コンピュータ

C#のWinFormsでINotifyPropertyChangedを使ってコントロールとデータバインディングしてみる。3

INotifyPropertyChangedを継承したクラスのオブジェクトをViewModelとしてWinFormのコントロールとバインドすることが出来ました。今回はジェネリッククラスの勉強がてら、ジェネリッククラスを使うコードに書き換えて...
コンピュータ

C#のWinFormsでINotifyPropertyChangedを使ってコントロールとデータバインディングしてみる。2

前回はテキストボックスとラベルに同じプロパティをバインドしましたが、今回は別のオブジェクトをバインドし、変更通知で連動させてみます。前回の記事ソースコードファイル名:Form1.Designer.csnamespace VMsample01...
コンピュータ

dotnet.exeで生成したwinformsプロジェクトのソースファイルをmonoでコンパイルできるよう考える。

monoでdotnet.exeで生成したプロジェクトを扱うのは筆者のスキルでは困難ですので、Form1.csのみをmonoのmscでコンパイルできるように試してみたいと思います。まずプロジェクト用のフォルダを作成。フォルダ名をTestPro...
コンピュータ

C#でクリップボードからパス文字列を取得し外部プログラムのExplorerを実行し開く

日常的にパスをコピーしエクスプローラーで開くという操作を行います。今回はその操作をワンクリックで実行するプログラムを作成してみました。プロジェクトはWinFormsで作成します。using System.Diagnostics;namesp...
コンピュータ

WinFormsでMenuStripとDockStyleをFillにしたPanelの表示順番

フォームのメニューバーを構成するMenuStripとDockSytleをFillにしたPanelを同じフォームのクライアント領域に配置した場合どの様に表示されるでしょうか?筆者的自然な形はメニューバーが表示され残された領域一杯にPanelが...
コンピュータ

C#でテキストファイルに1行ごと書き込み

ファイル名:Program.csusing System;using System.IO;namespace WriteLines01;class Program{ static void WriteLines(string filenam...
コンピュータ

C#のイテレーターブロックでテキストファイルを1行ごと読み込み

テキストファイルを1行ごと読み込みファイル名:input.txtあ 1い 2う 3ファイル名:Program.csusing System;using System.IO;namespace IteratorBlock01;class Pr...
コンピュータ

C#のWPFでWebView2を試す。

WebView2はWebブラウザ(Edge)をWPFのコントロールとしてデスクトップアプリケーションで扱うことが出来るとのことですので、試してみたいと思います。WinFormの記事プロジェクトの作成mkdir プロジェクト名cd プロジェク...
コンピュータ

C#のWinFormsでWebView2を試す。

WebView2はWebブラウザ(Edge)をWinFormsのコントロールとしてデスクトップアプリケーションで扱うことが出来るとのことですので、試してみたいと思います。プロジェクトの作成mkdir プロジェクト名cd プロジェクト名dot...