WPFにて、Windowsのアプリ開発を行っており、
Validation.ErrorTemplateを使用しエラーメッセージを出すようにしているのですが、
このValidation.ErrorTemplateのフォントサイズのバインド方法についてご教授いただきたいです。
現在、ViewのXAML上には以下のように記載し、ValidationErrorを表示するようにしています。
xaml
1<TextBox> 2 <Validation.ErrorTemplate> 3 <ControlTemplate> 4 <StackPanel> 5 <AdornedElementPlaceholder x:Name="mainElement" /> 6 <TextBlock Foreground="Red" 7 Background="Transparent" 8 TextWrapping="Wrap" 9 HorizontalAlignment="Left" 10 FontSize="20" 11 Width="100" 12 Text="hogehoge" /> 13 </StackPanel> 14 </ControlTemplate> 15 </Validation.ErrorTemplate> 16</TextBox>
上記のValidation.ErrorTemplate内のFontSizeの値を、
以下のように書き換えViewModelのプロパティにBindしたいと考えているのですが、うまく実行できずに困っています。
xaml
1<TextBox> 2 <Validation.ErrorTemplate> 3 <ControlTemplate> 4 <StackPanel> 5 <AdornedElementPlaceholder x:Name="mainElement" /> 6 <TextBlock Foreground="Red" 7 Background="Transparent" 8 TextWrapping="Wrap" 9 HorizontalAlignment="Left" 10 FontSize="{Binding Path=ValidateFontSize}" 11 Width="100" 12 Text="hogehoge" /> 13 </StackPanel> 14 </ControlTemplate> 15 </Validation.ErrorTemplate> 16</TextBox>
cs
1/// ViewModel 2public int ValidateFontSize { get; set; }
■エラー出力内容
System.Windows.Data Error: 40 : BindingExpression path error: 'ValidateFontSize' property not found on 'object' ''ReadOnlyObservableCollection`1' (HashCode=43618347)'. BindingExpression:Path=ValidateFontSize; DataItem='ReadOnlyObservableCollection`1' (HashCode=43618347); target element is 'TextBlock' (Name=''); target property is 'FontSize' (type 'Double')
■当方環境
Visual Studio 2013
C#バージョン:4.0
.Net FrameWork 4.6
拙い質問で申し訳ありませんが、何卒よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/21 04:19
2020/03/21 04:20