也就是 Setter Property="Fill" Value="{StaticResource SolidColorBrush}" 这里的 StaticResource 无法找到定义在 Dictionary1 之前,尝试获取 StaticResource 静态绑定资源引用的值。 这是 StaticResource 和 DynamicResource 的差别,这也就是使用 StaticResource 时性能更高的原因。 以上的代码在 Dictionary1.xaml 加入之前,获取 StaticResource 静态资源引用绑定的属性的值,从而让 StaticResource 执行,找到了在 FooResourceDictionary 由于 StaticResource 只执行一次,这就导致了即使后续加入 Dictionary1.xaml 资源字典,也不会更新 StaticResource 静态资源引用绑定的属性的值为 Dictionary1
但是颜色的定义,是会在迭代被变更的 从技术侧的一个解决方法是采用 StaticResource 来进行资源的引用,相当于给资源一个别名的方式。 自然,重复定义的画刷就是重复的资源,不合适 好在可以使用 StaticResource 的方式,使用静态资源引用,从而让资源被重新定向,如下面代码,定义了一个主题颜色 <SolidColorBrush x:Key="Brush.SolidColorBrush.RedThemeBrush" Color="#FFC10606"/> 接下来可以采用 StaticResource 引用此颜色,定义一个默认的页面的背景画刷 <StaticResource x:Key="DefaultPageBackgroundBrush" ResourceKey="Brush.SolidColorBrush.RedThemeBrush 这只是一个思想,不使用 StaticResource 也可以,如换成绑定的方式也可以
ButtonFontWeight}" FontSize="{StaticResource ButtonFontSize}" FontFamily ="{StaticResource ButtonFontFamily }">A Customized button</Button> 如果我要给另一个按钮设置相同属性时则需要复制这三条属性,如果有更多则每次都需要复制这三条 ButtonFontWeight}" FontSize="{StaticResource ButtonFontSize}" FontFamily ="{StaticResource ButtonFontFamily }">A Customized button</Button> <Button Margin="5" FontWeight="{<em>StaticResource</em> ButtonFontWeight}" FontSize="{<em>StaticResource</em> ButtonFontSize
Left" Text="{Binding Num}" Foreground="{StaticResource PrimaryColorBrush}" Style="{StaticResource CommonTb}"> HorizontalAlignment="Left" Foreground="{StaticResource PrimaryColorBrush}" Text="票" Style="{StaticResource " Text="{Binding SubmitRate}" Style="{StaticResource
<Setter Property="BorderBrush" Value="Transparent"/> <Setter Property="Foreground" Value="{<em>StaticResource</em> SliderThumb.Static.Foreground}"/> <Setter Property="Template" Value="{<em>StaticResource</em> SliderHorizontal <Trigger Property="Orientation" Value="Vertical"> <Setter Property="Template" Value="{<em>StaticResource</em> SliderThumb.Track.Border}" BorderThickness="1" Background="{<em>StaticResource</em> SliderThumb.Track.Background <Thumb x:Name="Thumb" Focusable="False" Height="18" OverridesDefaultStyle="True" Template="{<em>StaticResource</em>
ScrollBar.Static.Background}" BorderBrush="{StaticResource ScrollBar.Static.Border Value="true"> <Setter TargetName="border" Property="Background" Value="{<em>StaticResource</em> DataGridForeground}" /> <Setter Property="FontSize" Value="{<em>StaticResource</em> DataGridFontSize} }" /> <Setter Property="RowHeaderStyle" Value="{<em>StaticResource</em> DefaultDataGridRowHeaderStyle} " /> <Setter Property="ColumnHeaderStyle" Value="{<em>StaticResource</em> DefaultDataGridColumnHeaderStyle
现在在界面上添加三个按钮控件: <Grid> <StackPanel> <Button Style="{<em>StaticResource</em> baseButtonStyle }" Content="hello"/> <Button Style="{<em>StaticResource</em> baseButtonStyle1}" Content="hello"/> <Button Style="{<em>StaticResource</em> baseButtonStyle2}" Content="hello"/> </StackPanel> baseButtonStyle}" Content="hello"/> <Button Style="{<em>StaticResource</em> baseButtonStyle1}" Content ="hello"/> <Button Style="{<em>StaticResource</em> baseButtonStyle2}" Content="hello"/> </
StaticResource linearBrush}" Points="160,0 200,0 200,40 160,40" /> <Polygon Fill="{<em>StaticResource</em> linearBrush Fill="{StaticResource linearBrush}" Points="80,40 120,40 120,80 80,80" /> <Polygon Fill="{<em>StaticResource</em> ="{StaticResource linearBrush}" Points="40,120 80,120 80,160 40,160" /> <Polygon Fill="{<em>StaticResource</em> Fill="{StaticResource linearBrush}" Points="40,160 80,160 80,200 40,200" /> <Polygon Fill="{<em>StaticResource</em> Fill="{StaticResource linearBrush}" Points="40,200 80,200 80,240 40,240" /> <Polygon Fill="{<em>StaticResource</em>
HztDmaer}" Text="{Binding DklvubnuiTeqch,Converter={StaticResource DyakmdgwuTlaukxbo}}"></TextBlock> HztDmaer}" Text="{Binding DklvubnuiTeqch,Converter={StaticResource DyakmdgwuTlaukxbo}}"></TextBlock> HztDmaer}" Text="{Binding DklvubnuiTeqch,Converter={StaticResource DyakmdgwuTlaukxbo}}"></TextBlock> HztDmaer}" Text="当前的值" /> <TextBlock Style="{<em>StaticResource</em> HztDmaer }" Text="{Binding DklvubnuiTeqch,Converter={<em>StaticResource</em>
<RepeatButton Command="{x:Static ScrollBar.PageUpCommand}" Style="{<em>StaticResource</em> <RepeatButton Command="{x:Static ScrollBar.PageDownCommand}" Style="{<em>StaticResource</em> }" Orientation="Horizontal" Style="{<em>StaticResource</em> for_scrollbar}" TargetType="ScrollBar" /> <Style BasedOn="{<em>StaticResource</em> for_scrollviewer}" TargetType ="ScrollViewer" /> <Style BasedOn="{<em>StaticResource</em> MyButton}" TargetType="Button" /> </ResourceDictionary
SliderThumb.Track.Border}" BorderThickness="1" Background="{StaticResource SliderThumb.Track.Background SliderThumb.Static.Background}" Stretch="Fill" Stroke="{StaticResource SliderThumb.Static.Border}"/> SliderThumb.Static.Background}" Stretch="Fill" Stroke="{StaticResource SliderThumb.Static.Border}"/> SliderThumb.Static.Background}" Stretch="Fill" Stroke="{StaticResource SliderThumb.Static.Border}"/> SliderThumb.Track.Border}" BorderThickness="1" Background="{StaticResource SliderThumb.Track.Background
PhoneFontFamilyNormal}" 12 FontSize="{StaticResource PhoneFontSizeNormal}" 13 Foreground=" {StaticResource PhoneForegroundBrush}" 14 SupportedOrientations="Portrait" Orientation="Portrait 44 <TextBlock Text="Application Peak Memory Usage" Margin="10" Foreground="{<em>StaticResource</em> Margin="10" Foreground="{<em>StaticResource</em> PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/> 57 Margin="10" Foreground="{StaticResource PhoneAccentBrush}" FontSize="24" TextAlignment="Center"/> 59
<Setter Property="OverridesDefaultStyle" Value="True" /> <Setter Property="Template" Value="{<em>StaticResource</em> WindowStyle" Value="None" /> </Style> <Style TargetType="{x:Type view:AlterDialogWindow}" BasedOn="{<em>StaticResource</em> " SnapsToDevicePixels="False" Source="{Binding DialogType, Converter={<em>StaticResource</em> TemplateMini}" Template1="{<em>StaticResource</em> TemplateNormal}" Template2="{<em>StaticResource</em> TemplateFull}" Template0}" Template1="{<em>StaticResource</em> Template1}" /> </ContentPresenter.ContentTemplateSelector
="Auto"> <Image Source="assets/02_ShoppingCart.png" Stretch="Fill" Visibility="{Binding Converter={<em>StaticResource</em> Width="Auto"> <Image Source="assets/05_Contact.png" Stretch="Fill" Visibility="{Binding Converter={<em>StaticResource</em> Width="Auto"> <Image Source="assets/06_Comment.png" Stretch="Fill" Visibility="{Binding Converter={<em>StaticResource</em> " Width="Auto"> <Image Source="assets/08_Links.png" Stretch="Fill" Visibility="{Binding Converter={<em>StaticResource</em> " Width="Auto"> <Image Source="assets/09_Print.png" Stretch="Fill" Visibility="{Binding Converter={<em>StaticResource</em>
="#FF838383"/> <Style TargetType="{x:Type Button}"> <Setter Property="FocusVisualStyle" Value="{<em>StaticResource</em> FocusVisual}"/> <Setter Property="Background" Value="{<em>StaticResource</em> Button.Static.Background}"/ > <Setter Property="BorderBrush" Value="{<em>StaticResource</em> Button.Static.Border}"/> <Setter Property IsPressed" Value="true"> <Setter Property="Background" TargetName="border" Value="{<em>StaticResource</em> <Setter Property="TextElement.Foreground" TargetName="contentPresenter" Value="{<em>StaticResource</em>
</Rectangle> <Rectangle x:Name="r02" Fill="{<em>StaticResource</em> </Rectangle> <Rectangle x:Name="r03" Fill="{<em>StaticResource</em> </Rectangle> <Rectangle x:Name="r04" Fill="{<em>StaticResource</em> </Rectangle> <Rectangle x:Name="r05" Fill="{<em>StaticResource</em> </Rectangle> <Rectangle x:Name="r06" Fill="{<em>StaticResource</em>
Visibility="{Binding RelativeSource={RelativeSource AncestorType=ListBoxItem}, Path=IsMouseOver, Converter={StaticResource RelativeSource AncestorType=ListBoxItem}, Path=(ItemsControl.AlternationIndex),Mode=OneWay,Converter={StaticResource Visibility="{Binding RelativeSource={RelativeSource AncestorType=ListBoxItem}, Path=IsMouseOver, Converter={StaticResource RelativeSource AncestorType=ListBoxItem}, Path=(ItemsControl.AlternationIndex),Mode=OneWay,Converter={StaticResource RelativeSource AncestorType=ListBoxItem}, Path=(ItemsControl.AlternationIndex),Mode=OneWay,Converter={StaticResource
BoolToValueConverter},ConverterParameter={StaticResource PassedBrush},FallbackValue={StaticResource PassedBrush}" FalseValue="{StaticResource FailedBrush}"/> </Grid.Resources> <TextBlock Text="Score : 60" Foreground="{Binding Passed,Converter={<em>StaticResource</em> BoolToObjectConverter}}"/> 5. DecimalString},Converter={StaticResource ValueConverter}}"/> 或者更进一步写一个字符串的包装类: public class StringWrapper StringWrapper},Converter={StaticResource ValueConverter}}"/> 9.
文字逐个反转的动画也用了那篇文章里提到的 TimeSpanIncreaser 来控制 BeginTime: <Storyboard BeginTime="{Binding Next, Source={<em>StaticResource</em> TimeSpanIncreaser}}" /> <local:NintendoEShopLoadingRow Grid.Row="1" Delay="{Binding Next, Source={<em>StaticResource</em> TimeSpanIncreaser}}" /> <local:NintendoEShopLoadingRow Grid.Row="2" Delay="{Binding Next, Source={<em>StaticResource</em> TimeSpanIncreaser}}" /> <local:NintendoEShopLoadingRow Grid.Row="3" Delay="{Binding Next, Source={<em>StaticResource</em> TimeSpanIncreaser}}" /> <local:NintendoEShopLoadingRow Grid.Row="4" Delay="{Binding Next, Source={<em>StaticResource</em>
Width" Value="2"/> </Style> 我们做10个 Rectangle 使用 RectangleStyle1 在 Rectangle 使用 style="{StaticResource </Rectangle.RenderTransform> </Rectangle> <Rectangle x:Name="r02" Style="{<em>StaticResource</em> </Rectangle.RenderTransform> </Rectangle> <Rectangle x:Name="r03" Style="{<em>StaticResource</em> /Rectangle.RenderTransform> </Rectangle> <Rectangle x:Name="r04" Style="{<em>StaticResource</em> /Rectangle.RenderTransform> </Rectangle> <Rectangle x:Name="r05" Style="{<em>StaticResource</em>