对于ResourceDictionary样式代码:
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> ... <Style x:Key="AlertButton" TargetType="ButtonBase" BasedOn="{StaticResource SystemButtonBase}"> <Setter Property="Cursor" Value="Hand" /> <Setter Property="Margin" Value="8"/> <Setter Property="Padding" Value="4"/> <Style.Triggers> <Trigger Property="IsMouseOver" Value="True"> <Setter Property="Cursor" Value="Hand"></Setter> <Setter Property="Opacity" Value=".8" /> </Trigger> <Trigger Property="IsPressed" Value="True"> <Setter Property="Opacity" Value=".4" /> </Trigger> </Style.Triggers> </Style> ... </ResourceDictionary>
使用C#代码引用:
ResourceDictionary mystyles; mystyles = new ResourceDictionary(); mystyles.Source = new Uri("/FirstFloor.ModernUI;component/Assets/Button.xaml", UriKind.RelativeOrAbsolute); System.Windows.Style btnStyle = mystyles["AlertButton"] as Style; new Button { Foreground = new SolidColorBrush(Colors.White), Content = content, Command = this.CloseCommand, CommandParameter = result, IsDefault = false, IsCancel = isCancel, MinHeight = 21, MinWidth = 65, Background = new SolidColorBrush(System.Windows.Media.Color.FromRgb(252, 73, 0)), Margin = new Thickness(4, 0, 4, 0) , Style = new Style(typeof(Button), btnStyle) { Triggers = { tRed } } };