2013-04-23 2 views
0

저는 뷰 모델에 바인딩하는 스타일 세트가 있습니다. 이것은 배경과 전경에 잘 작동합니다. 나는 이제 글꼴 크기를 묶고 싶다. 바인딩이 작동하도록 할 수 있지만 값을 변경하고 해당 속성에 대해 PropertyChanged를 호출하면 새 값이 반환되지 않습니다. 어떤 아이디어?Silverlight 스타일의 FontSize 바인딩이 변경되지 않습니다.

sample.xaml

<Style x:Key="ApplicationNameStyle" TargetType="TextBlock"> 
    <Setter Property="Foreground" Value="{StaticResource NavigationForegroundColorBrush}"/> 
    <Setter Property="FontSize" Value="{Binding FontSize12, Source={StaticResource Sampe}}"/> 
    <Setter Property="FontWeight" Value="Bold"/> 
    <Setter Property="Margin" Value="0,2,0,0"/> 
    <Setter Property="VerticalAlignment" Value="Center"/> 
    <Setter Property="Effect"> 
     <Setter.Value> 
      <DropShadowEffect BlurRadius="10" Opacity="0.25" ShadowDepth="0"/> 
     </Setter.Value> 
    </Setter> 
</Style> 

sampleviewmodel.cs

public Double FontSize12 
{ 
    get 
    { 
     return _fontSize12; 
    } 
    set 
    { 
     _fontSize12 = value; 
     if (PropertyChanged != null) 
      PropertyChanged(this, new PropertyChangedEventArgs("FontSize12")); 
    } 
} 
+0

죄송합니다. 문제가 재현되지 않습니다. 스타일을 사용하여 예제 프로젝트를 설정하고 샘플보기 모델 객체를 추가하고 사용자가 클릭했을 때보기 모델 객체의 글꼴 크기에 2를 더한 버튼과 스타일을 사용하여 TextBlock을 추가했습니다. 이것은 예상대로 동작했습니다 : 버튼을 클릭 할 때마다 글꼴이 커지고 커졌습니다. 어떤 값을 글꼴 크기로 설정하려고합니까? –

답변

1

당신은 당신이 Mode=TwoWay 바인딩 설정하려고 할 수 있습니다. 이렇게하면 개체에 대한 모든 변경 내용이 UI에 반영됩니다.

+0

감사합니다. – doclove

관련 문제