なんとなく

なんとなく書きます

C#

WPFのTreeViewの要素を数え上げる。

WPFのTreeViewの要素を数え上げるのをぱっと見調べても見つからなかったので書く まあ正確にはTreeViewにバインドしたインスタンスの数をしっかり数え上げたんだけども 結構悩んだけど再帰に気づけばあっさり片付いた。 まずはバインドしている数え上げの対…

LINQのSkipとTakeについて

Skipはその名を通り指定の数だけ飛ばす。 Takeは指定の数だけ出力する。 2つを組み合わせると 範囲の指定ができる。 ↓のように書くと Enumerable.Range(1, 100).Skip(10).Take(20) で11~30を返す。 SkipWhileとTakeWhileはそれぞれ Func<int,bool>とFunc<int,int,bool>のデリゲートを</int,int,bool></int,bool>…

LINQのAggregateについて

使い方が初見ではいまいち不明なAggregateの使い方について 雑なイメージはreduce関数 [1,2,3,4]を1234とかに変換するときに使える。 こんな感じで Enumerable.Range(1, 4).Aggregate(0, (a, b) => 10* a + b) 今回の例だと Convert.ToInt32(string.Join("",…

時刻の文字列化

C#

DateTime.Now.ToString("文字列");文字列=yyyy/MM/dd HH:mm:ss.fff の時以下のように出力される。2013/06/20 08:48:29.273MM → 月 mm → 分 に注意。HH → 24時間表記 hh → 12時間表記

WriteableBitmapの保存方法

C#

ストリームを作成し、xxxBitmapEncoderを使う。 xxxは保存したい画像のファイル形式によって違う。基本的なコードは以下。 xxxを保存した形式に変化させる。 使えるのは、Bmp,Jpeg,Png,Tiff,Gifがある。 圧縮率とかを変えたい場合は、encoderのどっかをいじ…

ドラッグ&ドロップ

C#

overrideでの書き方。 protected override void OnDragEnter(DragEventArgs drgevent) { drgevent.Effect = DragDropEffects.All; base.OnDragEnter(drgevent); } protected override void OnDragDrop(DragEventArgs drgevent) { string fileNames = (string…

windowの位置,サイズについて

C#

winodwの位置とdisplay情報の取得について◆windowの位置について・アプリケーションのサイズを取得 アプリケーションの左上を原点にした領域を取得できる. Rectangle rect = this.ClientRectangle; Rectangle rect2 = DisplayRectangle; の2つの方法か・ア…