VS自带的控件总是觉得不够美观,而xaml语言提供了一个自己编写控件样式的可能性
效果图:
xaml代码:

<ComboBox.Resources><Style  TargetType="{x:Type ComboBox}"><Setter Property="Width" Value="120"/><Setter Property="HorizontalAlignment" Value="Stretch"/><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="{x:Type ComboBox}"><Border  BorderBrush="White" BorderThickness="2" CornerRadius="22" Background="Transparent"><Grid><!--下拉箭头--><ToggleButton ClickMode="Press" Focusable="False" IsChecked="{Binding IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" Margin="12" MinWidth="10" MinHeight="0" Width="Auto" Foreground="White"><ToggleButton.Style><Style TargetType="{x:Type ToggleButton}"><Setter Property="MinWidth" Value="0"/><Setter Property="MinHeight" Value="0"/><Setter Property="Width" Value="Auto"/><Setter Property="Height" Value="Auto"/><Setter Property="Background" Value="Transparent"/><Setter Property="BorderBrush" Value="#00000000"/><Setter Property="BorderThickness" Value="2"/><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="{x:Type ToggleButton}"><DockPanel Background="{TemplateBinding Background}" LastChildFill="False" SnapsToDevicePixels="True"><Border x:Name="Border" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"  DockPanel.Dock="Right" ><Path Data="M0,0L3.5,4 7,0z" Fill="{TemplateBinding Foreground}" HorizontalAlignment="Center" VerticalAlignment="Center"/></Border></DockPanel><ControlTemplate.Triggers><Trigger Property="IsChecked" Value="True"/></ControlTemplate.Triggers></ControlTemplate></Setter.Value></Setter><Style.Triggers><Trigger Property="IsEnabled" Value="False"><Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlDarkBrushKey}}"/></Trigger></Style.Triggers></Style></ToggleButton.Style></ToggleButton><!--项内容--><ContentPresenter  IsHitTestVisible="False" Content="{TemplateBinding SelectionBoxItem}" ContentTemplate="{TemplateBinding SelectionBoxItemTemplate}" ContentTemplateSelector="{TemplateBinding ItemTemplateSelector}" VerticalAlignment="Center" Margin="3" HorizontalAlignment="Stretch" /><TextBox x:Name="PART_EditableTextBox" HorizontalAlignment="Stretch" Focusable="True" Visibility="Collapsed" IsReadOnly="False"/><!--下拉显示面板HorizontalOffset:设置下拉面板的相对位置--><Popup HorizontalOffset="-1" Width="{TemplateBinding ActualWidth}"IsOpen="{TemplateBinding IsDropDownOpen}" Focusable="False"    PopupAnimation="Slide"><Grid  SnapsToDevicePixels="True" HorizontalAlignment="Stretch"><Border  BorderThickness="0,0,0,0" BorderBrush="White" HorizontalAlignment="Stretch" CornerRadius="0" Background="White"/><ScrollViewer  SnapsToDevicePixels="True" HorizontalAlignment="Stretch" ><StackPanel IsItemsHost="True" KeyboardNavigation.DirectionalNavigation="Contained" HorizontalAlignment="Stretch" /></ScrollViewer></Grid></Popup></Grid></Border></ControlTemplate></Setter.Value></Setter></Style></ComboBox.Resources><ComboBox.Background><LinearGradientBrush EndPoint="0,1" StartPoint="0,10"><GradientStop Color="White" Offset="0"/><GradientStop Color="White" Offset="1"/></LinearGradientBrush></ComboBox.Background><ComboBoxItem Content="管理员" Foreground="#FF505050" BorderThickness="0"/><ComboBoxItem Content="操作员" Foreground="#FF505050" BorderThickness="0" BorderBrush="White" Background="White"/></ComboBox>

WPF空心圆角combox相关推荐

  1. PhotoShop制作空心圆角矩形

    PhotoShop制作空心圆角矩形 教程如下: 在线学习:PhotoShop制作空心圆角矩形 以上就是关于"PhotoShop制作空心圆角矩形"的全部内容.

  2. android 画空心矩形框,Android实现空心圆角矩形按钮的实例代码

    搜索热词 页面上有时会用到背景为空心圆角矩形的Button,可以通过xml绘制出来. drawrable文件夹下bg_red_hollow_rectangle.xml android:shape=&q ...

  3. WPF 中设置Combox下拉框Text 显示值

    最近在写一个WPF客户端的一个小程序,其中有个小需求如下: 展示下拉列表里面有树形结构 点击下拉子项时同时显示父级和子级文本 也就是说在DisplayMember 中有两种显示方式 下拉列表显示时,显 ...

  4. wpf 进度条两侧圆角_[原译]WPF绘制圆角多边形

    介绍 最近,我发现我需要个圆角多边形.而且是需要在运行时从用户界面来绘制.WPF有多边形.但是不支持圆角.我搜索了一下.也没找到可行的现成例子.于是就自己做吧.本文描述了圆角多边形的实现,也包括如何用 ...

  5. WPF DataGrid控制Combox数据源问题

    不管是WPF还是winform中,多个ComboBox 绑定同一个数据源时,选择其中一个ComboBox,其他的也跟着变成同一选项.原因是combobox绑定了同一个数据源,对数据源的操作导致了其他控 ...

  6. WPF 制作圆角按钮

    在程序对应坐置插入以下代码,或是先拖一个按钮控件到窗体中,再替换对应的代码. 修改 CornerRadius="18,3,18,3"  就可以改变圆角大小 按钮效果: <Bu ...

  7. WPF 设置 圆角 例如Grid、Button、TextBox、PasswordBox

    1.背景设置圆角: <Window x:Class="ESPCPS.MainWindow"xmlns="http://schemas.microsoft.com/w ...

  8. WPF中,Combox的SelectedItem属性绑定成功后,未能默认显示上一次选择的结果。

    问题描述: Combox中,设定了绑定对象,但是在第一次进入时却没有显示上次选中的项.      1)查看SelectedItem对应绑定的值,也是有的(启动时,读取上次设置的结果,来初始化界面). ...

  9. 导出和导入JSON数据

    In the previous articles, we studied the basic rules of SQL database design, created a database sche ...

最新文章

  1. 西霞口船业公司疑遭外商合谋欺诈
  2. 【Android 高性能音频】Oboe 开发流程 ( 检查 Oboe 音频流属性 | 开始播放 | 停止播放 | 关闭 Oboe 音频流 | 重新配置 Oboe 音频流属性 )
  3. String 课后作业2
  4. 【PC工具】Windows 上编辑树莓派(linux EXT)分区文件工具——Ext2Fsd
  5. ffmpeg实现摄像头拉流_[FFmpeg] 如何通过实时摄像头帧图片生成 rtmp 直播流?
  6. CAN2.0的标准帧和扩展帧格式
  7. C 如何对指针进行指定字节的偏置操作
  8. 数据分析告诉你为什么Apple Watch会大卖?
  9. OpenCV3学习(11.7) BRISK特征检测器及BRISK描述符
  10. 怎么增加服务器容量,新睿云服务器硬盘容量怎么增加?
  11. OpenCV图像轮廓提取
  12. incapsula加速教程
  13. 戴尔g7 linux,颜值高性能强大 戴尔G7游戏本评测详解
  14. 入门交互设计的4个步骤
  15. 传智播客python培训怎么样
  16. C++11 Type-rich编程
  17. Abaqus中C3D8R单元和C3D8I单元的区别
  18. LTE系统调试记录14:频谱感知模块——UE发送感知结果到BS进行处理
  19. python爬虫 关于加速乐(_jsl)
  20. 基于计算机视觉原理的自主足球机器人位置计算

热门文章

  1. 西农新版锐捷linux系统客户端联网方法
  2. 如何在Apple Watch上静音,管理和隐藏通知
  3. java攻击力与命中_JAVA写一个怪物的类,类中有属性姓名,攻击力,有打人的方法。...
  4. 微信小程序多选标签的实现(单选或者多选)
  5. Java开发技术总结!给2021的Java一些建议
  6. Python零基础入门01【计算机基础和环境搭建】
  7. 大数据助推数字经济时代到来
  8. Windows系统 Apple 注销账户 Revoke Token
  9. 【CSS】图片底部空白缝隙处理 ( 使用居中对齐 / 顶部对齐 / 底部对齐 | 将行内元素 / 行内块元素转为块级元素 )
  10. linux机器连接sql,在linux下连接MS SQL Server