読者です 読者をやめる 読者になる 読者になる

tmori3y2のブログ

主にWindowsのプログラムなど

DISM実行中にスリープやWindows Updateによる再起動をしないようにLinqPadでプロセス監視

tmori3y2.hatenablog.com で書いたように、LinqPadでAPIを呼び出すと、LinqPadを終了するまで、電源要求を継続することは示せた。 しかし、元々はDismコマンドを実行中だけ電源要求したかったので、目的は達成できていない。 LinqPadのサンプルにWindowを表…

プログラム実行中にスリープやWindows Updateによる再起動をしないように設定するAPI

勘違いでした tmori3y2.hatenablog.com という記事を書きましたがガセでした。すみません・・・タイトルはもう修正済みです。 powercfg /requestsで電源要求しているプログラムをチェックするというのは正しいです。 そして、APIを使用して電源要求をしたプ…

Single型について

C#

だんだん、更新間隔が長くなってます。反省。 今回も、新人教育ネタです。 若手の方の2進数脳のトレーニングになれば幸いかと。 前置き System.Decimal (decimal)は、10進数の浮動小数点型なので、取っ付きやすいが、2進数の浮動小数点型は、中々そうはいか…

dotnetfiddle.net用にC# Consoleのテンプレートを作ってみた

C#

2016/11/20: 更新 またまた、ご無沙汰です。 社内教育のネタ作りで、ちょっとしたテストコードを書く機会があって、オンラインコンパイラを試してみた。 開発環境のトラブルでOSクリーンインストールをするのに嫌気を指していて、MSDNサブスクリプションを利…

Decimal型について

C#

(2016/09/10 修正) 新人教育係を拝命した。 今回は、そのネタから一つ。 System.Decimal (decimal)は、 96bitの整数 0 ~ 79228162514264337593543950335 (296 - 1) 5bitの小数桁数 0 〜 28 1bitの符号 から構成される10進数小数型。 整数部、および、末尾の…

thisの使い方 - StyleCop vs FxCop

tmori3y2.hatenablog.com LinqPadの記事から、こっそりStyleCop.Analyzersを使っていた。 FxCop相当のCode Analysisとは違い、標準で入っていないので敬遠していたが、 opcdiary.net こちらの記事で気軽に試せると知って試しに入れてみた。 今、読み返してみ…

LinqPadでCultureInfoをDumpして見た2 ~ 各地域と言語の数値フォーマットの詳細化

PCの周りにゴキブリ出現。3年ぶり。 tmori3y2.hatenablog.com 前回は、取り敢えずCultureInfoを列挙して、特にNumberFormatプロパティの小数点と桁数区切りをクエリしてLinqPadで結果を見た。 しかし、前回は、C++/Cのランタイムをいじった経験がある者にと…

LinqPadでCultureInfoをDumpして見た

かなりお疲れ気味で、久しぶりの更新になりました。 先週、箕面温泉のスパーガーデンに行ってきましたが、全く疲れが取れず、逆に疲れがどっと出ている感じです。 箕面の滝までの道には、ポケモンGOをやっている人たちも大勢いましたが、自分はちびっこもい…

MSBuildのインラインタスクで.nuspecファイルを加工してみた

tmori3y2.hatenablog.com 前回は、自作のNuGet Packageをパックして、ローカルパッケージソースに配置するまでを半自動化するMSBuild Targetを作りました。 しかし、まだまだ不満があります。 プレースフォルダ$copyright$が.nuspecファイルのテンプレートで…

MSBuild Targetを一括インポートしてオプションでアセンブリ/ツール/コンテンツのNuGet Packageを作成するMSBuild TargetのNuGet Packageを作った

tmori3y2.hatenablog.com 前回は、一つのMSBuild TargetをインポートするMSBuild TargetのNuGet Packageを作ったが、元々一番やりたかったのは、アセンブリ/コンテンツのNuGet Packageを作成するMSBuild TargetをインポートするNuGet Package・・・ 「相変わ…

初心者が悩んだOxyPlotによるLineSeriesの描画とWPFコントロールのStyleの継承

インフルエンザや風邪は、まだまだ流行っているようです。皆さんもお気をつけてください。 tmori3y2.hatenablog.com さて、XYデータでX軸の重複チェックが出来るようになると、Chartを描いてみたくなる。 IoTも見こして、将来的にはセンサデータなどのリアル…

ReactivePropertyのCountNotifierを再入防止に使用する

blog.okazuki.jp ReactiveProperty/CountNotifier.cs at master · runceel/ReactiveProperty · GitHub 「特徴的なのは、IncrementメソッドとDecrementメソッドが返すIDisposableをDisposeすることで、インクリメントやデクリメントの逆が実行されて値がもと…

初心者が迷ったReactiveCollectionとDataGridの重複値のチェック~リターンズ2

2016/12/05 注記 この記事のModelのコレクションをReactiveCollectionで実装する方法には、問題があります。 理由は、Schedulerのデフォルトの動作で、ReactivePropertyはViewへの更新のみがRenderingスレッドで実行されるのに対して、ReactiveCollectionのA…

初心者が迷ったReactiveCollectionとDataGridの重複値のチェック~リターンズ

2016/12/05 注記 この記事のModelのコレクションをReactiveCollectionで実装する方法には、問題があります。 理由は、Schedulerのデフォルトの動作で、ReactivePropertyはViewへの更新のみがRenderingスレッドで実行されるのに対して、ReactiveCollectionのA…

初心者が迷ってるReactiveCollectionとDataGridの重複値のチェック

2016/12/05 注記 この記事のModelのコレクションをReactiveCollectionで実装する方法には、問題があります。 理由は、Schedulerのデフォルトの動作で、ReactivePropertyはViewへの更新のみがRenderingスレッドで実行されるのに対して、ReactiveCollectionのA…

サクッと自家製NuGetを作ってReacitiveCollectionを使用したプロジェクトに機能を追加する

良く使用するヘルパークラスやXAMLのスタイルはNuGet Packageにしておくと便利です。 今回は、Viewで使いまわせる以下のヘルパークラスやコンテンツを含むパッケージを作成してみました。 Window Close前に編集中のコントロールの強制評価をしてエラーをブロ…

internal/privateフィールドの命名法は宗教論争?

C#

tmori3y2.hatenablog.com 共通言語仕様 (Common Language Specification)の準拠が極力求められるpublic/protectedメンバーと違い、internal/privateメンバーは内部で閉じているので、CLSを意識する必要はない。 もっとも、C#、VB.NET、C++/CLIなど、複数の言…

初心者が迷ったReactiveCollectionとDataGridのエラーと変更フラグの集計

2016/12/05 注記 この記事のModelのコレクションをReactiveCollectionで実装する方法には、問題があります。 理由は、Schedulerのデフォルトの動作で、ReactivePropertyはViewへの更新のみがRenderingスレッドで実行されるのに対して、ReactiveCollectionのA…

async/awaitに見る同期/非同期とblocking/non-blocking

C#

シングルスレッドやマルチスレッドプログラミングで、同期/非同期と共に良く目にするキーワードに、blocking/non-blockingがある。 組み込み屋には、blocking/non-blockingの方が馴染みがあって、 「なんとなく同期 = blocking」 「non-blockingは直ぐに制御…

CA1014: Mark assemblies with CLSCompliantAttributeはどんな意味があるか?

(2016/02/13訂正) (2016/02/25追記) (2016/03/12追記) CA1014: Mark assemblies with CLSCompliantAttribute VS2013などで、Code Analysisを有効にして、Microsoft All Rulesでチェックすると大体必ず出る警告がこれ・・・ 「CLS Compliantって何?」 て人も…

マイコード以外にステップインする方法

マイコードは、主に自分の開発しているデバッグ版のアセンブリを指しており、デフォルトではNuGet Packageや.NET Frameworkのアセンブリにステップインすることはありません。 .pdbファイルが入手できるアセンブリやソースが入手できるもの、.NET Framework…

コンテキストについて調べてみた

C# OS

(2016/02/14 リンクミス修正) いろいろ、調べていたら2日ほど更新が止まってしまいました・・・ 内容は素人の書いている内容なので保証しません・・・ ちょっと恥ずかしいことも書いちゃうかもしれない。 今、やりたいのはC#でそれなりに保守が容易な複数ス…

初心者が迷ったSystem.Windows.Interactivityの困ったちゃん二連発

Blend SDKのSystem.Windows.Interactivityにはお世話になっています。 イベントをコマンドに変換するときは、 xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" とか、 xmlns:i="clr-namespace:System.Windows.Interactivity;assembly…

C#でも最後の砦はアセンブリコード

今VS2013ですが、昔からデバッガでは、アセンブリコードでもデバッグ出来ました。 「もちろん、C#でも!!」 「.pdb入手してMyCode以外もデバッグ出来るようにしたら、ランタイムやOSSのライブラリもデバッグ出来ますよ」 「まあ、普通にC#でデバッグしても良…

初心者が迷った流すべきものを流さない時はラムダ式に入れないとイケナイという話

tmori3y2.hatenablog.com Observableに変えていく Observableじゃないメタデータバージョン ReactivePropertyなメタデータバージョン メタデーターは、どうせSetValidateNotifyError()まで流せないので、ReactivePropertyでラムダ式に埋め込む LINQを書きや…

初心者が迷ったReactivePropertyを使用したModelのDirtyフラグ

大した説明もなく、さらっとIsDirtyをコードに紛れ込ませていましたが、元ネタはかずき大先生のこちらの記事。 blog.okazuki.jp ReadOnlyReactivePropertyじゃなくして、クリアをIsDirty.Value = falseで出来るように端折っています・・・ tmori3y2.hatenabl…

初心者が迷ったReactivePropertyを使用した通知サイクルの改良と再入ブロック処理

(2016/02/07)ReactiveProperty 2.5で再入ブロックが不要になったので、追記したコメントを書き換えました。 tmori3y2.hatenablog.com 改良型の数値型のReactiveProperty+MVVMパターンでは、以下の通知サイクルが回るようになっています。 M→VM(→V)→VM Model…

初心者が迷ったReactivePropertyを使用した数値型のView Modelの通知サイクルの改良

tmori3y2.hatenablog.com 前回のSubscribe()の実装の補足です。 今扱っているのは、表示や有効数字は小数点以下の桁数が決まっているけど、小数点以下の省略した0や、入力時の余計な0は良きに計らってくれるという、何とも贅沢なGUIの例です。 しかし、数値…

初心者が迷ったReactivePropertyを使用した数値型のView Model

tmori3y2.hatenablog.com Modelが出来たら、いよいよView Modelです。 さて、ここまで書いて、WPF+MVVM+ReactiveProperty+Rx+LINQがどれも始めて半年程度の自分が、LINQ式の中にObservableなメタデータを埋め込んでいくところで罠にはまりまくったことが段々…

初心者が迷ったReactivePropertyを使用した数値型のModel

tmori3y2.hatenablog.com 前回は、TextBoxの文字列を数値型に変換するときにdecimalで一旦受けると良いという話をした。 変換とチェックの拡張メソッドを作っておくのが無難 入力するデータはdecimalで一旦受けることを検討 整数は小数点以下の桁数が0のdeci…

初心者が迷ったReactivePropertyを使用した数値型の処理

tmori3y2.hatenablog.com Modelの型が数値型のプロパティは、TextBoxにバインドするときにはView Modelで文字列型に変換するという話をしました。 しかし、単純に、数値型といっても整数型、浮動小数点型、固定小数点型など、いろいろある。 組み込み型の一…

初心者が迷ったReactivePropertyを使用したView Modelの設計

ReactivePropertyは、 データソースのデータ型(DTO: Data Transfer Object) それに毛(INortifyPropertyChanged)が生えた程度のPOCO (Plain Old CLR Object) との相性が抜群な上、 Rxで処理を記述出来る ので、複雑でない場合はView Modelでの実装が中心にな…

Windows 10 IoTに釣られて15年ぶりにInterfaceを買ったら電流モニタの記事でReactivePropertyとか使われてた

Amazon.co.jp ウィジェット CQ出版の雑誌Interfaceは昔からコアな記事が多かった。 XMLがまだドラフトで珍しかった時代にも、XMLの記事を組んだり、XML絡みでにわかに注目を浴びたUTF-8を始めとした文字コードについての記事を出したりしており、若いころは…

WPF + MVVM初心者が躓きReactivePropertyに救われたこと

WPF + MVVMで開発を始めて、半年ほどの初心者です。 WPF+MVVMは初心者に優しくない(=習得が難しい)なっと思った部分をReactivePropertyに拾ってもらって、ようやく先に進めるようになってきました。 多分、同じように躓く人は多いのではないかと思われたので…

リフレクションでプロパティの設定/取得をする拡張メソッドを持つ空のインターフェースは有りなのか?

C#

このブログを始めたのは、インターネットでROMったり、フォーラムで質問しても中々自分の疑問を解消出来ないような気がしたので、情報発信をしていくことで、帰ってくるレスポンスの中に答えがあるんじゃないかと考えたのが動機です。 もっとも、皆さんにス…