原文:WPF GroupBox 样式分享

默认样式

GroupBox 样式分享" title="WPF GroupBox 样式分享">

添加样式后



GroupBox 样式分享" title="WPF GroupBox 样式分享">

样式代码:

<Style TargetType="{x:Type
GroupBox}">

           
<Setter Property="BorderBrush"
Value="#D5DFE5"/>

           
<Setter Property="BorderThickness"
Value="1"/>

           
<Setter Property="Template">

               
<Setter.Value>

                   
<ControlTemplate TargetType="{x:Type
GroupBox}">

                       
<Grid
SnapsToDevicePixels="true">

                           
<Grid.ColumnDefinitions>

                               
<ColumnDefinition Width="6"/>

                               
<ColumnDefinition
Width="Auto"/>

                               
<ColumnDefinition Width="*"/>

                               
<ColumnDefinition Width="6"/>

                           
</Grid.ColumnDefinitions>

                           
<Grid.RowDefinitions>

                               
<RowDefinition Height="Auto"/>

                               
<RowDefinition Height="Auto"
MinHeight="59"/>

                               
<RowDefinition Height="*"/>

                               
<RowDefinition Height="6"/>

                           
</Grid.RowDefinitions>

                           
<Border BorderBrush="Transparent"
BorderThickness="{TemplateBinding BorderThickness}"
Grid.ColumnSpan="4" Grid.Column="0" CornerRadius="4" Grid.Row="0"
Grid.RowSpan="4" Background="#FFE5E5E5"
Margin="0,-0.25,0,0.25">

                               
<Border.Effect>

                                   
<DropShadowEffect Color="#FFAAAAAA"
Direction="350"/>

                               
</Border.Effect>

                           
</Border>

                           
<Border x:Name="Header" Grid.Column="1"
Padding="3,1,3,0" Grid.Row="1" Grid.RowSpan="1"
HorizontalAlignment="Right" Background="{x:Null}" Margin="0"
Height="16.96" VerticalAlignment="Top"/>

                           
<ContentPresenter Grid.ColumnSpan="2"
Grid.Column="1" Margin="{TemplateBinding Padding}" Grid.Row="2"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
Grid.RowSpan="1"/>

                           
<Border BorderBrush="White"
BorderThickness="{TemplateBinding BorderThickness}"
Grid.ColumnSpan="4" CornerRadius="4" Grid.Row="1"
Grid.RowSpan="3">

                               
<Border BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
CornerRadius="3">

                                   
<Border BorderBrush="White"
BorderThickness="{TemplateBinding BorderThickness}"
CornerRadius="2"/>

                               
</Border>

                           
</Border>

                           
<Grid x:Name="HeaderGrid" Height="47.2"
VerticalAlignment="Stretch" Grid.Column="2" Grid.ColumnSpan="2"
Grid.RowSpan="1" Margin="0,7.982,-16,3.818" Grid.Row="1"
HorizontalAlignment="Right">

                               
<Path Data="M12.19,0 L12.290733,14.847
-1.3000648E-08,14.847 z" Height="16.1" Margin="0,0,8.067,0"
RenderTransformOrigin="0.499999978361064,0.499999995889058"
Stretch="Fill" Stroke="Black" StrokeThickness="0"
VerticalAlignment="Top" HorizontalAlignment="Right" Width="12.29"
>

                                   
<Path.Fill>

                                       
<LinearGradientBrush EndPoint="0.466,2.201"
StartPoint="0.5,0">

                                           
<GradientStop Color="#C66A6A6A"
Offset="1"/>

                                           
<GradientStop Color="#E1434343"
Offset="0.855"/>

                                           
<GradientStop Color="#FFC6C6C6"
Offset="0.11"/>

                                       
</LinearGradientBrush>

                                   
</Path.Fill>

                                   
<Path.RenderTransform>

                                       
<TransformGroup>

                                           
<ScaleTransform/>

                                           
<SkewTransform/>

                                           
<RotateTransform
Angle="90.087"/>

                                           
<TranslateTransform Y="-6.04399277075815"
X="6.0531771644038841"/>

                                       
</TransformGroup>

                                   
</Path.RenderTransform>

                               
</Path>

                               
<Border BorderBrush="Black" BorderThickness="0"
Margin="0,8.061,0,0" CornerRadius="16,0,0,16"
Background="White">

                                   
<Border.Effect>

                                       
<DropShadowEffect Direction="195" BlurRadius="10"
Opacity="0.305" ShadowDepth="6"/>

                                   
</Border.Effect>

                                   
<Border x:Name="contentBorder" BorderBrush="Black"
Margin="6,6,0,6" CornerRadius="16,0,0,16">

                                       
<Border.Background>

                                           
<LinearGradientBrush EndPoint="1.002,0.498"
StartPoint="-0.024,0.502">

                                               
<GradientStop Color="#FF678B03"
Offset="0.027"/>

                                               
<GradientStop Color="#FFA4C43D"
Offset="0.948"/>

                                               
<GradientStop Color="#FFADCA54"
Offset="0.969"/>

                                               
<GradientStop Color="#FFA7C646"
Offset="0.975"/>

                                               
<GradientStop Color="#FFC9EF4C"
Offset="0.994"/>

                                           
</LinearGradientBrush>

                                       
</Border.Background>

                                       
<Grid>

                                           
<ContentControl HorizontalAlignment="Left"
Margin="20,0,23,0" VerticalAlignment="Center"
Foreground="White">

                                               
<ContentPresenter ContentSource="Header"
RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding
SnapsToDevicePixels}" HorizontalAlignment="Stretch"
VerticalAlignment="Center" Margin="0"
Width="212.323"/>

                                           
</ContentControl>

                                       
</Grid>

                                   
</Border>

                               
</Border>

                           
</Grid>

                       
</Grid>

                   
</ControlTemplate>

               
</Setter.Value>

           
</Setter>

       
</Style>

前台布局:

<Grid
x:Name="bootGrid">

       
<GroupBox Header="groupBox1" 
x:Name="groupBox1" Margin="100" MinHeight="200"
MinWidth="200">

           
<Grid>

               
<Grid.ColumnDefinitions>

                   
<ColumnDefinition Width="75"/>

                   
<ColumnDefinition Width="10"/>

                   
<ColumnDefinition
Width="150*"/>

               
</Grid.ColumnDefinitions>

               
<Grid.RowDefinitions>

                   
<RowDefinition Height="28"/>

                   
<RowDefinition Height="28"/>

                   
<RowDefinition Height="28"/>

                   
<RowDefinition/>

               
</Grid.RowDefinitions>

               
<TextBlock HorizontalAlignment="Right"
TextWrapping="Wrap" Text="Name:"
VerticalAlignment="Center"/>

               
<TextBlock HorizontalAlignment="Right"
TextWrapping="Wrap" Text="Phone:" VerticalAlignment="Center"
Margin="0" Grid.Row="1"/>

               
<TextBlock HorizontalAlignment="Right"
TextWrapping="Wrap" Text="Email:" VerticalAlignment="Center"
Margin="0" Grid.Row="2"/>

               
<TextBlock HorizontalAlignment="Right"
TextWrapping="Wrap" Text="Address:" VerticalAlignment="Top"
Margin="0 10 0 0" Grid.Row="3"/>

<TextBox Margin="0,0,18.241,0" TextWrapping="Wrap"
VerticalAlignment="Center" Grid.Column="2"
Height="24"/>

               
<TextBox Margin="0,0,18.241,0" TextWrapping="Wrap"
VerticalAlignment="Center" Grid.Column="2" Height="24"
Grid.Row="1"/>

               
<TextBox Margin="0,0,18.241,0" TextWrapping="Wrap"
VerticalAlignment="Center" Grid.Column="2" Height="24"
Grid.Row="2"/>

               
<TextBox Margin="0,2,18.241,20" TextWrapping="Wrap"
VerticalAlignment="Stretch"  Grid.Column="2"
MinHeight="58" Grid.Row="3"/>

           
</Grid>

       
</GroupBox>

   
</Grid>

WPF GroupBox 样式分享的更多相关文章

  1. WPF DataGrid 样式分享

    原文:WPF DataGrid 样式分享 隔行换色,鼠标单击,悬浮样式都有 先看效果: 代码: <DataGrid AutoGenerateColumns="False" N ...

  2. WPF GroupBox样式

    来源:http://code.msdn.microsoft.com/WPF-GroupBox-Style-1d9df7c5/ 效果: XAML CODE: <Window xmlns=" ...

  3. WPF DataGrid 样式设置

    隔行换色,鼠标单击,悬浮样式都有,其具体效果如图 1 所示. 图 1 WPF DataGrid 样式设置效果图 其中: 界面设计代码下所示 ? + 查看代码 1 2 3 4 5 6 7 8 9 10 ...

  4. wpf 导出Excel Wpf Button 样式 wpf简单进度条 List泛型集合对象排序 C#集合

    wpf 导出Excel   1 private void Button_Click_1(object sender, RoutedEventArgs e) 2 { 3 4 ExportDataGrid ...

  5. 求助 WPF ListViewItem样式问题

    求助 WPF ListViewItem样式问题 .NET 开发 > Windows Presentation Foundation Вопрос 0 Нужно войти <Style ...

  6. 自定义WPF 窗口样式

    原文:自定义WPF 窗口样式 Normal 0 false 7.8 pt 0 2 false false false EN-US ZH-CN X-NONE 自定义 Window 在客户端程序中,经常需 ...

  7. WPF中样式和行为和触发器

    原文:WPF中样式和行为和触发器 样式简介:样式(style)是组织和重用格式化选项的重要工具,不是使用重复的标记填充XAML,以便设置外边距.内边距.颜色以及字体等细节.而是创建一系列封装所有这些细 ...

  8. WPF自定义样式篇-DataGrid

    WPF自定义样式篇-DataGrid 先上效果图: 样式:  <!--DataGrid样式-->    <Style TargetType="DataGrid"& ...

  9. WPF CheckBox样式 ScrollViewer样式 WrapPanel、StackPanel、Grid布局

    本节讲述布局,顺带加点样式给大家看看~单纯学布局,肯定是枯燥的~哈哈 那如上界面,该如何设计呢? 1.一些布局元素经常用到.Grid StackPanel Canvas WrapPanel等.如上这种 ...

随机推荐

  1. 用fiddler测试ip轮询

    测试业务: 服务端根据域名配置了三台服务器ip,测试ip轮询的逻辑 测试方法: 使用fiddler配置hosts即可 1.1.1.1 第一台ip 1.1.1.1 第二台ip 1.1.1.1 第三台ip ...

  2. opencv学习之旅_绘制跟踪轨迹

    如何将运动物体的轨迹画出来 我的想法是先:用CAMSHIFT跟踪物体,这个函数会返回一个track_box,将box的中心提取出来,然后以这个中心在另外的图像上画出来,然后将这张图像处理,提取轮廓,提 ...

  3. C# unsafe code

    (*) unsafe 和 fixed unsafe {                    ];     ; i < array.Length; i++)     {         arra ...

  4. HOWTO Use Python in the web — Python v3.0.1 documentation

    HOWTO Use Python in the web - Python v3.0.1 documentation mod_python¶ People coming from PHP often f ...

  5. 【错误】:MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'

    错误:MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 解决 ...

  6. vector的内存分配与释放

    1. vector内存分配 <Effective STL>中"条款14":使用reserve来避免不必要的重新分配 关于STL容器,最神奇的事情之一是只要不超过它们的最 ...

  7. Hadoop中SequenceFile的使用

    1.对于某些应用而言,须要特殊的数据结构来存储自己的数据. 对于基于MapReduce的数据处理.将每一个二进制数据的大对象融入自己的文件里并不能实现非常高的可扩展性,针对上述情况,Hadoop开发了 ...

  8. 小谈@override

    @override是jdk1.5增加的注解,主要是用来声明子类的某方法覆盖了父类的某方法.非常简单的注解,但是有个小问题: 项目最开始使用的是jdk1.6,mvc模式:接口 ----> 实现类. ...

  9. android 多语言适配

    建好android项目后,默认的是有个values文件,该文件下面默认的有strings.xml. 做多语言适配的时候,就需要在创建好的项目中,右键单击res文件夹,选择创建新的xml文件. 然后点击 ...

  10. jQuery中两种阻止事件冒泡的区别

    方式一:event.stopPropagation(); 方式二:return false; 但是这两种方式是有区别的.return false 不仅阻止了事件往上冒泡,而且阻止了事件本身.event ...