Winform + Devexpress 实现看板效果
环境:VS2019、Sql Server R2 2008、Devexpress ChartControl、layoutControl
最终效果:
1、设置背景图(LayoutControl)
this.Root.BackgroundImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("Root.BackgroundImageOptions.Image")));
this.Root.BackgroundImageOptions.Visible = true;
2、设置ChartControl透明到父控件的背景图:
//ChartControl背景色透明
this.chartControl3.BackColor = System.Drawing.Color.Transparent;
//填充模式为空
this.chartControl3.FillStyle.FillMode = DevExpress.XtraCharts.FillMode.Empty;
3、设置ChartControl父控件背景色为透明:
//至关重要,如果不设置,ChartControl就不会显示透明背景图片
this.layoutControl1.BackColor = System.Drawing.Color.Transparent;
4、取消ChartControl的Border,看起来更干净:
this.chartControl3.BorderOptions.Visibility = DevExpress.Utils.DefaultBoolean.False;
5、ChartControl里面Series、Legend透明设置只需要设置BackColor=Transparent即可。
6、GridControl、GridView样式设置
//本来要实现和ChartControl一样的效果,但是最后还是没找到,所以只能单独给设置一个统一的背景
this.gridControl1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("gridControl1.BackgroundImage")));this.gridControl1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;this.gridControl1.EmbeddedNavigator.Appearance.BackColor = System.Drawing.Color.Transparent;this.gridControl1.EmbeddedNavigator.Appearance.Options.UseBackColor = true;this.gridControl1.ImeMode = System.Windows.Forms.ImeMode.NoControl;this.gridControl1.Location = new System.Drawing.Point(12, 301);this.gridControl1.LookAndFeel.SkinMaskColor = System.Drawing.Color.Transparent;this.gridControl1.LookAndFeel.SkinMaskColor2 = System.Drawing.Color.Transparent;this.gridControl1.LookAndFeel.Style = DevExpress.LookAndFeel.LookAndFeelStyle.UltraFlat;this.gridControl1.LookAndFeel.UseDefaultLookAndFeel = false;this.gridControl1.MainView = this.gridView1;this.gridControl1.Name = "gridControl1";this.gridControl1.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {this.repositoryItemMemoEdit1,this.repositoryItemMemoEdit2});this.gridControl1.Size = new System.Drawing.Size(320, 160);this.gridControl1.TabIndex = 5;this.gridControl1.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {this.gridView1});//GridView很多属性要设置
this.gridView1.Appearance.ColumnFilterButton.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.ColumnFilterButton.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.ColumnFilterButton.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.ColumnFilterButton.Options.UseBackColor = true;this.gridView1.Appearance.ColumnFilterButton.Options.UseBorderColor = true;this.gridView1.Appearance.ColumnFilterButtonActive.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.ColumnFilterButtonActive.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.ColumnFilterButtonActive.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.ColumnFilterButtonActive.Options.UseBackColor = true;this.gridView1.Appearance.ColumnFilterButtonActive.Options.UseBorderColor = true;this.gridView1.Appearance.Empty.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.Empty.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.Empty.Options.UseBackColor = true;this.gridView1.Appearance.EvenRow.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.EvenRow.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.EvenRow.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.EvenRow.Options.UseBackColor = true;this.gridView1.Appearance.EvenRow.Options.UseBorderColor = true;this.gridView1.Appearance.FilterPanel.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.FilterPanel.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.FilterPanel.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.FilterPanel.Options.UseBackColor = true;this.gridView1.Appearance.FilterPanel.Options.UseBorderColor = true;this.gridView1.Appearance.FixedLine.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.FixedLine.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.FixedLine.Options.UseBackColor = true;this.gridView1.Appearance.FocusedCell.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.FocusedCell.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.FocusedCell.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.FocusedCell.Options.UseBackColor = true;this.gridView1.Appearance.FocusedCell.Options.UseBorderColor = true;this.gridView1.Appearance.FocusedRow.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.FocusedRow.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.FocusedRow.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.FocusedRow.ForeColor = System.Drawing.Color.White;this.gridView1.Appearance.FocusedRow.Options.UseBackColor = true;this.gridView1.Appearance.FocusedRow.Options.UseBorderColor = true;this.gridView1.Appearance.FocusedRow.Options.UseForeColor = true;this.gridView1.Appearance.FooterPanel.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.FooterPanel.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.FooterPanel.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.FooterPanel.Options.UseBackColor = true;this.gridView1.Appearance.FooterPanel.Options.UseBorderColor = true;this.gridView1.Appearance.GroupButton.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.GroupButton.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.GroupButton.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.GroupButton.Options.UseBackColor = true;this.gridView1.Appearance.GroupButton.Options.UseBorderColor = true;this.gridView1.Appearance.GroupFooter.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.GroupFooter.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.GroupFooter.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.GroupFooter.Options.UseBackColor = true;this.gridView1.Appearance.GroupFooter.Options.UseBorderColor = true;this.gridView1.Appearance.HeaderPanel.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.HeaderPanel.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.HeaderPanel.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.HeaderPanel.Options.UseBackColor = true;this.gridView1.Appearance.HeaderPanel.Options.UseBorderColor = true;this.gridView1.Appearance.HideSelectionRow.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.HideSelectionRow.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.HideSelectionRow.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.HideSelectionRow.Options.UseBackColor = true;this.gridView1.Appearance.HideSelectionRow.Options.UseBorderColor = true;this.gridView1.Appearance.HorzLine.BackColor = System.Drawing.Color.White;this.gridView1.Appearance.HorzLine.BackColor2 = System.Drawing.Color.White;this.gridView1.Appearance.HorzLine.Options.UseBackColor = true;this.gridView1.Appearance.OddRow.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.OddRow.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.OddRow.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.OddRow.Options.UseBackColor = true;this.gridView1.Appearance.OddRow.Options.UseBorderColor = true;this.gridView1.Appearance.Preview.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.Preview.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.Preview.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.Preview.Options.UseBackColor = true;this.gridView1.Appearance.Preview.Options.UseBorderColor = true;this.gridView1.Appearance.Row.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.Row.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.Row.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.Row.Options.UseBackColor = true;this.gridView1.Appearance.Row.Options.UseBorderColor = true;this.gridView1.Appearance.RowSeparator.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.RowSeparator.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.RowSeparator.Options.UseBackColor = true;this.gridView1.Appearance.SelectedRow.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.SelectedRow.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.SelectedRow.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.SelectedRow.Options.UseBackColor = true;this.gridView1.Appearance.SelectedRow.Options.UseBorderColor = true;this.gridView1.Appearance.TopNewRow.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.TopNewRow.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.TopNewRow.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.TopNewRow.Options.UseBackColor = true;this.gridView1.Appearance.TopNewRow.Options.UseBorderColor = true;this.gridView1.Appearance.VertLine.BackColor = System.Drawing.Color.White;this.gridView1.Appearance.VertLine.BackColor2 = System.Drawing.Color.White;this.gridView1.Appearance.VertLine.Options.UseBackColor = true;this.gridView1.Appearance.ViewCaption.BackColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.ViewCaption.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.Appearance.ViewCaption.BorderColor = System.Drawing.Color.Transparent;this.gridView1.Appearance.ViewCaption.Options.UseBackColor = true;this.gridView1.Appearance.ViewCaption.Options.UseBorderColor = true;this.gridView1.AppearancePrint.EvenRow.BackColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.EvenRow.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.EvenRow.BorderColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.EvenRow.Options.UseBackColor = true;this.gridView1.AppearancePrint.EvenRow.Options.UseBorderColor = true;this.gridView1.AppearancePrint.FilterPanel.BackColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.FilterPanel.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.FilterPanel.BorderColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.FilterPanel.Options.UseBackColor = true;this.gridView1.AppearancePrint.FilterPanel.Options.UseBorderColor = true;this.gridView1.AppearancePrint.FooterPanel.BackColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.FooterPanel.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.FooterPanel.BorderColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.FooterPanel.Options.UseBackColor = true;this.gridView1.AppearancePrint.FooterPanel.Options.UseBorderColor = true;this.gridView1.AppearancePrint.HeaderPanel.BackColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.HeaderPanel.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.HeaderPanel.BorderColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.HeaderPanel.Options.UseBackColor = true;this.gridView1.AppearancePrint.HeaderPanel.Options.UseBorderColor = true;this.gridView1.AppearancePrint.Lines.BackColor = System.Drawing.Color.White;this.gridView1.AppearancePrint.Lines.BackColor2 = System.Drawing.Color.White;this.gridView1.AppearancePrint.Lines.BorderColor = System.Drawing.Color.White;this.gridView1.AppearancePrint.Lines.Options.UseBackColor = true;this.gridView1.AppearancePrint.Lines.Options.UseBorderColor = true;this.gridView1.AppearancePrint.OddRow.BackColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.OddRow.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.OddRow.BorderColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.OddRow.Options.UseBackColor = true;this.gridView1.AppearancePrint.OddRow.Options.UseBorderColor = true;this.gridView1.AppearancePrint.Preview.BackColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.Preview.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.Preview.BorderColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.Preview.Options.UseBackColor = true;this.gridView1.AppearancePrint.Preview.Options.UseBorderColor = true;this.gridView1.AppearancePrint.Row.BackColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.Row.BackColor2 = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.Row.BorderColor = System.Drawing.Color.Transparent;this.gridView1.AppearancePrint.Row.Options.UseBackColor = true;this.gridView1.AppearancePrint.Row.Options.UseBorderColor = true;//无边框this.gridView1.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;this.gridView1.DetailHeight = 300;this.gridView1.GridControl = this.gridControl1;this.gridView1.Name = "gridView1";this.gridView1.OptionsBehavior.Editable = false;this.gridView1.OptionsDetail.EnableMasterViewMode = false;this.gridView1.OptionsView.AllowHtmlDrawHeaders = true;this.gridView1.OptionsView.BestFitMode = DevExpress.XtraGrid.Views.Grid.GridBestFitMode.Full;this.gridView1.OptionsView.RowAutoHeight = true;this.gridView1.OptionsView.ShowGroupPanel = false;//左侧的行预留去掉this.gridView1.OptionsView.ShowIndicator = false;//竖向进度条不显示this.gridView1.VertScrollVisibility = DevExpress.XtraGrid.Views.Base.ScrollVisibility.Never;
最后还有很多想法没实现:
1、ChartControl柱图的X轴,本来只显示整点即可,但是如果只有一柱,会在其它刻度显示小数。如图所示:
实现方法:
//设置Series的ArgumentScaleType为ScaleType.Qualitative
series.ArgumentScaleType = ScaleType.Qualitative;//定义CustomDrawAxisLabel事件,重写x轴的值
private void ChartControl1_CustomDrawAxisLabel(object sender, CustomDrawAxisLabelEventArgs e) {if (e.Item.Axis == ((XYDiagram)chartControl1.Diagram).AxisX)e.Item.Text = Convert.ToInt32(e.Item.AxisValue).ToString();}
2、ChartControl的饼图,本来Label要显示具体的文字,但是不知道怎么设置,显示的都是占比。
3、GridControl怎么设置透明背景到父控件的背景。
Winform + Devexpress 实现看板效果相关推荐
- 原创C# Winform+DevExpress皮肤框架
基于热门C#语言研发的Winform皮肤框架,国内比较成熟的有C/S框架网四大快速开发框架产品,分别是标准版CSFramework V2.x.高级版CSFramework V3.x.企业版CSFram ...
- winform窗体打开动画效果
一.winform窗体打开动画效果 ①书写窗体动画类 class animation{/// <summary>/// 函数功能:该函数能在显示与隐藏窗口时能产生特殊的效果.有两种类型的动 ...
- 原创C# Winform+DevExpress皮肤框架 1
基于热门C#语言研发的Winform皮肤框架,国内比较成熟的有C/S框架网四大快速开发框架产品,分别是标准版CSFramework V2.x.高级版CSFramework V3.x.企业版CSFram ...
- (转)winform Form 淡入淡出效果
(转)winform Form 淡入淡出效果 原文地址:http://blog.csdn.net/a237428367/article/details/5933565 using System.Run ...
- WINFORM DEVEXPRESS插件常用功能总结
前言 DevExpress 控件的功能比较强大,是全球知名控件开发公司,对于开发 B/S 或 C/S 都非常出色,可以实现很炫且功能强大的效果.DevExpress Winform 常用控件是本人在前 ...
- WinForm支持拖拽效果
有一个MSDN客户提问在WinForm中如何实现拖拽效果--比如在WinForm中有一个Button,我要实现的效果是拖拽这个Button到目标位置后生成一个该控件的副本. 其实这个操作主要分成三步走 ...
- c winform 上传文件到mysql_C# winform DevExpress上传图片到数据库【转】
实现功能如下图: 注明:此文使用的是DevExpress控件,winform 原生控件也是一样使用方法. 1.点击选择图片按钮,功能为通过对话框选择要上传的文件,并将该文件在下面的PictureEdi ...
- WinForm DevExpress使用-(ChartControl控件绘制图表)
最近因为公司项目需要用到WinForm的DecExpress控件,在这里把一些使用方法总结一下. DevExpress中有一个专门用来绘制图表的插件ChartControl,可以绘制折线图.饼状图.柱 ...
- C# winform DevExpress上传图片
实现功能如下图: 注明:此文使用的是DevExpress控件,winform 原生控件也是一样使用方法. 1.点击选择图片按钮,功能为通过对话框选择要上传的文件,并将该文件在下面的PictureEdi ...
最新文章
- Spring基础面试题(一)
- 算法----返回Excel相应的列序号
- psp能装安卓软件吗_王思聪:翻译软件能翻译出文化吗?
- linux cpu 实际进程,linux – 找出高CPU占用率的apache进程实际上在做什么?
- java按列读取数据再存储_Java指定行读写数据
- 阿里-2019算法岗笔试编程题-kmp匹配
- 【译】你不知道的 Chrome 调试工具技巧 第二十天:Workspace的黑魔法
- (81)Vivado实现约束过程
- (25)Verilog HDL循环语句:forever
- java 经纬度距离_java根据经纬度计算距离
- [大数据、Hadoop、数据采集、MySQL、计算机基础、Windows、练习题库、面试]
- 一篇文章看明白 TCP/IP,TCP,UDP,IP,Socket 之间的关系
- 如何在网页中播放音乐和视频
- 实现对手机联系人列表进行读写操作,并用RecyclerView收缩展开方式展现
- 干掉Intel、AMD?国产处理器架构都有哪些?
- AISummit全球人工智能技术大会顺利开幕:首日精彩回顾
- rocketmq框架详细介绍
- 深入浅出学Spring Data JPA toPredicate Predicate[] p = new Predicate[list.size()]; query.where(cb.and 201
- java实现7天未收货则自动收货
- DM3730应用程序自启动解决方案