Xaml(C# WPF)

C#

記事一覧

コロン(:)の前後にはスペースを付けてはならない。

これはNG
<DataGridCell Content="{Binding Converter={convert: CategorySumConverter}}" Width="50" />
これはOK
<DataGridCell Content="{Binding Converter={convert:CategorySumConverter}}" Width="50" />

ConverterをMarkupExtension化して使おうとしたらエラーで戸惑いました。

こんな感じのよくあるKeyを付けるのもスペースを入れてはダメなようです。

<SolidColorBrush x:Key="Expander.MouseOver.Circle.Stroke" Color="#FF5593FF"/>

今まで意識することもなかったのですが、C#を書くときは普通にスペースを打っていたので気が付きにくかったです。
↓こんなの違和感ないでしょ?だったらxamlもスペース許して欲しいなぁ。

public class CategorySumConverter : MarkupExtension, IValueConverter
{
}

TemplateBinding と RelativeSource TemplatedParent

TemplateBindingはコンパイル時に評価される。
RelativeSourceは実行時に評価される。
つまり値を入れ替えたりしたい場合は、RelativeSourceでBindしなければならない。

C#
スポンサーリンク
Once and Only

コメント