프로그래밍/WPF, Silverlight
[WPF/Silverlight] 동적으로 스타일 지정하기
당근천국
2011. 2. 17. 01:46
보통 실버라이트나 WPF의 스타일은 디자이너가 App에 넣어서 이렇게 주지요.
문제는 보통때야 블랜드나 속성에서 그냥 지정하면되는데 동적으로 생성되는 컨트롤에서는 어떻게 스타일을 지정하지? ㅡ.-;;
네 이렇게 하면 됩니다.
차~~~암 쉽조?
ㅎㅎㅎ
이거몰라서 삽질을 얼마나 햇던지-_-;;;;;;;
app는 없다는 에러가 난다면 메인의 인스턴스를 받아서 점찍고 사용하시면 됩니다. App는 메인에 있으니까요.
<Style x:Key="S_Top" TargetType="RadioButton"> <Setter Property="Background" Value="{x:Null}"/> <Setter Property="Foreground" Value="{x:Null}"/> <Setter Property="HorizontalContentAlignment" Value="Center"/> <Setter Property="VerticalContentAlignment" Value="Center"/> <Setter Property="Padding" Value="25,0"/> <Setter Property="FontSize" Value="12"/> <Setter Property="Height" Value="29"/> <Setter Property="Cursor" Value="Hand"/> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="RadioButton"> <Grid> <VisualStateManager.VisualStateGroups> <VisualStateGroup x:Name="CheckStates"> <VisualStateGroup.Transitions> <VisualTransition GeneratedDuration="0:0:0.3"> <VisualTransition.GeneratedEasingFunction> <QuarticEase EasingMode="EaseOut"/> </VisualTransition.GeneratedEasingFunction> </VisualTransition> </VisualStateGroup.Transitions> </Grid> </ControlTemplate> </Setter.Value> </Setter> </Style>
문제는 보통때야 블랜드나 속성에서 그냥 지정하면되는데 동적으로 생성되는 컨트롤에서는 어떻게 스타일을 지정하지? ㅡ.-;;
네 이렇게 하면 됩니다.
rbButton.Style = App.Current.Resources["S_Top"] as Style;
차~~~암 쉽조?
ㅎㅎㅎ
이거몰라서 삽질을 얼마나 햇던지-_-;;;;;;;
app는 없다는 에러가 난다면 메인의 인스턴스를 받아서 점찍고 사용하시면 됩니다. App는 메인에 있으니까요.