首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Office 2010的外观和感觉?

Office 2010的外观和感觉?
EN

Stack Overflow用户
提问于 2009-12-18 23:31:51
回答 4查看 4.5K关注 0票数 3

我开始在一个WPF应用程序,其用户界面将相当松散的模型在Outlook上。我想在Outlook 2010测试版中模拟蓝色配色方案。有没有人看过任何教程或配方,描述了如何设计WPF按钮的样式,使它们看起来像Outlook 2010的任务按钮?它们位于Outlook 2010主窗口的左下角。谢谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-12-23 23:41:23

这是一个非常基本的Outlook2010任务按钮模板,它是在Expression Blend中创建的。我将模板分离为一个窗口资源。但请注意,图像和文本是硬编码到标记中的。要使用此模板,您需要将其合并到您声明的每个按钮中,作为该按钮的单独控件模板,或者您需要创建一个具有可绑定到的适当属性的自定义控件。

还要注意,我还没有创建触发器。要模拟Outlook 2010按钮,默认状态应为无边框--当鼠标悬停、按下鼠标等时,应显示边框和玻璃效果。尽管如此,该模板还是展示了如何获得Outlook 2010外观。

您可以通过创建一个新的WPF项目并用下面的标记替换Window1标记来签出该按钮。

代码语言:javascript
复制
<Window
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Class="Outlook_2010_Task_Button.MainWindow"
    x:Name="Window"
    Title="MainWindow"
    Width="640" Height="480" Background="#FFB7C9E0">
    <Window.Resources>
        <ControlTemplate x:Key="TaskButtonTemplate" TargetType="{x:Type RadioButton}">
            <Border x:Name="OuterBorder" Width="150" Height="28" BorderBrush="#FF59697F" BorderThickness="0.75" Background="#FFB0C8E2" Opacity="0.85" SnapsToDevicePixels="False">
                <Border.Effect>
                    <DropShadowEffect BlurRadius="3" Opacity="0.1"/>
                </Border.Effect>
                <Border x:Name="InnerBorder" BorderBrush="White" BorderThickness="0.75" Background="{x:Null}" Opacity="0.75" SnapsToDevicePixels="False">
                    <Grid>
                        <Border x:Name="Glow" Margin="0.999,0,-0.999,0" Grid.Row="0" Grid.RowSpan="2" BorderBrush="Black" BorderThickness="0">
                            <Border.Background>
                                <RadialGradientBrush Center="0.494,0.98" GradientOrigin="0.494,0.98" RadiusX="0.56" RadiusY="1.018">
                                    <GradientStop Color="#CCFFFFFF"/>
                                    <GradientStop Offset="1"/>
                                </RadialGradientBrush>
                            </Border.Background>
                        </Border>
                        <Border x:Name="Shine" Margin="0" BorderBrush="Black" BorderThickness="0" Grid.RowSpan="2">
                            <Border.Background>
                                <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                                    <GradientStop Color="#87FFFFFF" Offset="0"/>
                                    <GradientStop Offset="0.319"/>
                                </LinearGradientBrush>
                            </Border.Background>
                        </Border>
                        <StackPanel HorizontalAlignment="Left" Margin="0" Grid.RowSpan="2" Orientation="Horizontal">
                            <Image Height="24" HorizontalAlignment="Left" Margin="4,0,0,0" Source="calendar.png"/>
                            <TextBlock Text="Calendar" HorizontalAlignment="Center" VerticalAlignment="Center" FontFamily="Segoe UI" FontWeight="Bold" Margin="9,0,0,0" Foreground="#FF001955" />
                        </StackPanel>
                    </Grid>
                </Border>
            </Border>
        </ControlTemplate>
    </Window.Resources>

    <Grid x:Name="LayoutRoot">
        <RadioButton HorizontalAlignment="Center" VerticalAlignment="Center" Content="RadioButton" Template="{DynamicResource TaskButtonTemplate}"/>
    </Grid>
</Window>
票数 3
EN

Stack Overflow用户

发布于 2009-12-18 23:41:37

Here's a ready-made paid product solution可能会有帮助...这个解决方案需要免费/开源吗?这个可以免费试用。

票数 2
EN

Stack Overflow用户

发布于 2012-04-18 09:39:56

我推荐使用NavigationPane (CodePlex),它将提供比Outlook2010任务按钮样式更多的功能:

  • http://navigationpane.codeplex.com/

另外,对于Ribbon的外观和感觉,我建议使用Fluent:

  • http://fluent.codeplex.com/
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1928890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档