.NET

VisualStudio 2010 の Code Contracts

VS 2010 の Code Contracts は Static なチェックができるらしい。

WPF で強制的にソフトウェアレンダリングさせる

WPF はハードウェアアクセラレーションで描画をグラフィックカードに任せることができますが、いろいろな環境での負荷を考えるとソフトウェアレンダリングでも動かしてみたいことがあります。レジストリに下の内容を登録 (.reg で保存してダブルクリック) す…

WPF のフォーカス関連小ネタ

コントロールにフォーカスが当たったときのデザイン (デフォルトだと点線が表示される) を変更するには、ControlTemplate を作って FocusVisualStyle にセットする。変化無しにするには {x:Null} でもセットすれば OK。 <Style TargetType="{x:Type Control}"> <Setter Property="Template"> <Setter.Value> <ControlTemplate> <Rectangle Fill="Red" RadiusX="2" RadiusY="2" /> </ControlTemplate> </setter.value></setter>

DataGrid の行追加を無効に

WPF Toolkit の DataGrid に DataFieldBinding を使って明示的にバインドする場合、一番最後に新規行追加操作用の空白行 (NewItemPlaceholder) までバインドしようとして「そんなプロパティは無いよ」エラーがログに出ます。 閲覧用でデータ操作をさせないな…

VisualStudio 再インストール

Visual Studio 2008 でまともに開発できない状態 (何度かビルドしていると OutOfMemoryError が出て再起動しないと直らなかったり、デバッグ実行すると始まるまでに 5 分以上かかったり) になったので再インストール。 アンインストールしたあとで残るものを…

WPF デザイン確認用

DependencyProperty のリセットについて、当面の目的としては XAML で DataContext="{Binding ...}" のような記述をしてサンプルデータを表示し、実行時になかったことにすること。コンストラクタの InitializeComponent(); の後に書けば OK。 でもこのサン…

DependencyProperty のリセット

FrameworkElement の DataContext プロパティは、セットされていなければ親要素へさかのぼります。どこかに DataContext にセットしているとして、どこかの段階でそれを無かったことにしたい、さらに親へさかのぼって探すようにしたい場合、DependencyProper…

WPF で定義済みの色

定義済みの色一覧は Brushes のクラスドキュメントにあります。 Windows Presentation Foundation (WPF) の色名は、Microsoft .NET Framework、Windows フォーム、および Microsoft Internet Explorer の色名と一致します。これらの色とその名前は、UNIX X11…

DataGrid で OneWay Binding

WPFToolKit の DataGrid は便利でよく出来ていますが、Preview 版であり、まだまだ惜しいところがあります。 今日引っかかったのが Read Only なプロパティ (setter しかない) を Binding でバインドできないこと。強制的に TwoWay Binding するように設定さ…

XAML Power Toys

Visual Studio のアドイン、XAML Power Toys が便利。(参照:Yuya Yamaki’s blog - XAML Power Toys。ダウンロードしてインストールしただけでは使えないのでちゃんと設定しましょう) Binding をドラッグ&ドロップで追加できたりかなり便利なものです。

VisualStudio で OutOfMemory

Visual Studio 2008 SP1 にしてからなのか、それともプロジェクトに原因があるのか分かりませんが、何度かビルドしていくと 不明なビルドエラー '種類 'System.OutOfMemoryException' の例外がスローされました。' が発生しました という例外がビルド時に出…