如何创建WPF组合框平面样式?

时间:2011-08-30 10:03:25

标签: wpf combobox styles controltemplate

我想为WPF组合框创建一个平面样式模板,它在Visual Studio 2010中看起来像一个组合框。此外,我想在此模板中使用Visual Studio画笔。

Visial Studio 2010 combobox style

有人帮我找路吗?有没有完成的模板?也有人知道一个可以从其他应用程序获取控件模板的应用程序吗?

3 个答案:

答案 0 :(得分:19)

你的意思是工具栏组合框工具栏样式? 试试这个

<ComboBox Style="{StaticResource {x:Static ToolBar.ComboBoxStyleKey}}"/>

答案 1 :(得分:7)

以下是标准组合框样式和模板的链接:http://msdn.microsoft.com/en-us/library/ms752094.aspx

你应该能够添加一个样式,类似于使ComboBox变平的样式(可能需要一些调整):

<Style x:Key="CustomComboBox"  TargetType="{x:Type ComboBox}">
    <Setter Property="HorizontalAlignment" Value="Stretch"/>
    <Setter Property="VerticalAlignment" Value="Top"/>
    <Setter Property="MinWidth" Value="60"/>
    <Setter Property="UIElement.SnapsToDevicePixels" Value="True"/>
    <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"/>
    <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
    <Setter Property="ScrollViewer.CanContentScroll" Value="True"/>
    <Setter Property="TextElement.Foreground" Value="Black"/>
    <Setter Property="FrameworkElement.FocusVisualStyle" Value="{x:Null}"/>
    <Setter Property="BorderBrush" Value="Black"/>
    <Setter Property="BorderThickness" Value="1" />
    <Setter Property="Background" Value="White" />      
</Style>

答案 2 :(得分:0)

要检查控件模板和样式的第三方.Net程序集,您可以使用Reflector(现在已付费)或Telerik's JustDecompile(免费)。可能还有其他与此类似的工具,但这些都是您需要的(尤其是Reflector)。