工具栏控件绑定下拉式颜色选择框、文本框及响应事件

DevExpress学习(一)——创建Ribbon Form风格界面 一、创建Ribbon风格窗体 1选择Template Gallery 2选择Ribbon Form 添加完生成Ribbon Form如下图 二、为Ribbon Form上红色虚线方框位置添加元素 鼠标右键点击红色虚线方框的位置可以弹出该处可添加的元素列表,直接选择所需内容即可,如下图 1、BarButtonItem添加一个按钮,通常实现Click事件完成一定任务 2、Ba... 阅读详情
 

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Reflection;
using DevExpress.Utils;
using DevExpress.XtraEditors;
using DevExpress.XtraEditors.Controls;
using DevExpress.XtraEditors.Popup;
using DevExpress.XtraTab;
using DevExpress.XtraBars;
using DevExpress.LookAndFeel;

namespace DevExpress.XtraBars.Demos.SimplePad {
 public class ColorPopup {

             //页面容器
  XtraTabControl tabControl;

              //选中的颜色
  Color fResultColor;

              //点击的工具栏控件
  BarItem itemFontColor;

                //dev容器
  PopupControlContainer container;

               //要改变文字颜色的文本框
  RichTextBox rtPad;

               //container,item,rtPad三控件绑定
  public ColorPopup(PopupControlContainer container, BarItem item, RichTextBox rtPad) {
   this.rtPad = rtPad;
   this.container = container;
   this.itemFontColor = item; 
   this.fResultColor = Color.Empty;
                       
                        //创建页面容器
   this.tabControl = CreateTabControl();

                       //设置此控件不能用tab获取焦点
   this.tabControl.TabStop = false;

                       //在页面容器中添加三个页面
   this.tabControl.TabPages.AddRange(new XtraTabPage[] { new  XtraTabPage(), new XtraTabPage(), new                         XtraTabPage()});

                         //对三个页面分别进行初始化
   for(int i = 0; i < tabControl.TabPages.Count; i++)                            
                             SetTabPageProperties(i);

   tabControl.Dock = DockStyle.Fill;
                        
                         //将页面容器添加到container容器中
   this.container.Controls.AddRange(new System.Windows.Forms.Control[]{tabControl});
                       
                        //页面主题变化事件
                        UserLookAndFeel.Default.StyleChanged += new EventHandler(delegate { SetContainerSize(); });
                        SetContainerSize();
  }

                //设置容器大小
                void SetContainerSize() {
                     this.container.Size = CalcFormSize();
                }
             
               //获取新页面
  private XtraTabControl CreateTabControl() { return new XtraTabControl(); }

              
  private ColorListBox CreateColorListBox() { return new ColorListBox(); }

              //页面初始化
  private void SetTabPageProperties(int pageIndex) {
   XtraTabPage tabPage = this.tabControl.TabPages[pageIndex];
                     
                        //
   ColorListBox colorBox = null;

                      //
   BaseControl control = null;
   switch(pageIndex) {
    case 0:
     tabPage.Text = Localizer.Active.GetLocalizedString (StringId.ColorTabCustom);
     control = new ColorCellsControl(null);
     DevExpress.XtraEditors.Repository.RepositoryItemColorEdit rItem = new                                                         DevExpress.XtraEditors.Repository.RepositoryItemColorEdit();
     rItem.ShowColorDialog = false;
     (control as ColorCellsControl).Properties = rItem;
     (control as ColorCellsControl).EnterColor += new EnterColorEventHandle(OnEnterColor);
     control.Size = ColorCellsControlViewInfo.BestSize;
     break;
    case 1:
     tabPage.Text = Localizer.Active.GetLocalizedString(StringId.ColorTabWeb);
     colorBox = CreateColorListBox();
     colorBox.Items.AddRange(ColorListBoxViewInfo.WebColors);
     colorBox.EnterColor += new EnterColorEventHandler(OnEnterColor);
     control = colorBox;
     break;
    case 2:
     tabPage.Text = Localizer.Active.GetLocalizedString(StringId.ColorTabSystem);
     colorBox = CreateColorListBox();
     colorBox.Items.AddRange(ColorListBoxViewInfo.SystemColors);
     colorBox.EnterColor += new EnterColorEventHandler(OnEnterColor);
     control = colorBox;
     break;
   }
   control.Dock = DockStyle.Fill;
   control.BorderStyle = BorderStyles.NoBorder;
   control.LookAndFeel.ParentLookAndFeel = itemFontColor.Manager.GetController().LookAndFeel;
   tabPage.Controls.Add(control);
  }
  private void OnEnterColor(object sender, EnterColorEventArgs e) {
   fResultColor = e.Color;
   OnEnterColor(e.Color);
  }
  private void OnEnterColor(Color clr) {
   container.HidePopup();
   rtPad.SelectionColor = clr;

                    //控件rtpad上可变化颜色条
   int imIndex = itemFontColor.ImageIndex;
   ImageList iml = itemFontColor.Images as ImageList;
   Bitmap im = (Bitmap)iml.Images[imIndex];
   Graphics g = Graphics.FromImage(im);
   Rectangle r = new Rectangle(7, 7, 8, 8);
   g.FillRectangle(new SolidBrush(clr), r);
   if(imIndex == iml.Images.Count - 1) {
    iml.Images.RemoveAt(imIndex);
   }
                        g.Dispose();
   iml.Images.Add(im);
   itemFontColor.ImageIndex = iml.Images.Count - 1;
   
  }

  private ColorCellsControl CellsControl { get { return ((ColorCellsControl)tabControl.TabPages[0].Controls                                                              [0]); } }
  private string CustomColorsName { get { return "CustomColors"; } }
  public Color ResultColor { get { return fResultColor; } }
       
  public Size CalcFormSize() {
   Size size = ColorCellsControlViewInfo.BestSize;
                        size.Height = 6 * ColorCellsControlViewInfo.CellSize.Height + 7 *                                                               ColorCellsControlViewInfo.CellsInternval;
   return tabControl.CalcSizeByPageClient(size);
  }
 }
}

C# 自定义ComboBox显示颜色下拉框 Custom Controls C# WinForm 自定义ComboBox 显示颜色下拉框,在WinForm界面设计方面,采用自定义的ComboBox控件实现下拉框可选择颜色列表。可显示颜色小方块,源代码可在VS2008下编译通过。 立即下载

相关推荐

国央企创新负责人如何通过平台实现科研成果的快速识别与转化?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

Devexpress TextEditor等控件常用操作

1.TextEditor(barEditItem)取文本 string editValue = barEditItem1.EditValue.ToString();    //错误,返回null   string editValue = ((DevExpress.XtraEditors.TextEdit)barEditItem).EditValue.ToString();    //正确,返

大新软件老杨 3098

C# Log4Net不输出日志的解决方法

log4net是一个流行的 .NET 日志框架,用于记录应用程序的日志信息。如果你在使用log4net。

精通搬砖,资深技术砖家,在软件开发,人工智能,设备开发等领域都有研究。商业合作&交流学习可私信联系。 1263

DevExpress Winform 常用控件 入门教程

错误代码为 0xc0000005。Ø MarqueeProgressBarControl 是 DevExpress 的一个进度条控件,该控件和 ProgressBarControl 控件有不少相似之处,不过也是有区别的,MarqueeProgressBarControl只是现实进度的一小部分。4) InActiveTabPageHeaderAndOnMouseHover:关闭按钮显示在 XtraTabPage 上,鼠标移动到 XtraTabPage 时不显示,默认显示第一个,右上角不显示。

我只是很努力 1万+

全国大学校园网—拓扑图欣赏

全国大学网络拓扑图(一百张) 典型十张 1、 中央财经大学 2、国防科技大学 3、济南大学 4、西安石油大学 5、南通大学IPV6网络 6、中国矿业大学 7、青海师范大学 8、内蒙古科技大学 9、三峡大学 10、中共江苏省党校 剩余90张 点赞、评论获取 ...

LiBai'S BLOG 5万+

【从零开始玩量化1】AKShare: Python开源财经数据接口库

文章目录量化的第一步:数据AKShare介绍AKShare安装AKShare使用AKTools安装/使用结语 量化的第一步:数据 想要玩量化,第一步要有数据,这个数据可能是历史交易数据、财务数据、宏观数据等等。我们最终要做的,无非就是从数据中分析出有价值的信息,以便用来指导投资策略。 在获取数据的这条道路上,我走了很多弯路,尝试了各种方法:使用Tushare到放弃、自己写网易股票页面的爬虫,自己写申万行业数据的爬虫、自己写同花顺问财的爬虫、使用聚宽的免费数据API等等,直到最终,我发现了AKShare。 A

量化投资助手的博客 5万+

C# DevExpress Winform ComboBoxEdit 下拉框选项颜色交替

DevExpress的ComboBoxEdit的下拉框的选项要设置背景色就需要用它的DrawItem的绘制事件来实现,交替颜色就根据索引奇偶数来判断设置相应的颜色

涛神-Dev 的博客 2198

AI虚拟人物 数字人直播,不用出镜,不用露脸的直播方式(附教程 软件)

我们先来看一组数据,这是我通过蝉妈妈查到的某位虚拟主播的一个带货数据,粉丝还不到 3000 人,每次直播 1 到 4 个小时,30天的总销量达到了1200单,15天,总销售额 2 万,可能相对来说客单价还是比较低,最关键的是才直播了 6 场,如果说他能够一个月直播 20 天,每天花 4个小时去直播,当个副业来做,就可以达到最起码月入 3 万的一个收入水平,我个人觉得是非常的不错的。大家把商品图片放在背景,只要场景设置的不错,场景和产品的关联度高,直播的时候挂上购买链接也会有一定的成交。

. 7万+

手把手教你用DevExpress WinForm添加和自定义工具栏皮肤选择器

本文主要介绍在使用DevExpress WinForm开发一个应用程序是,如何添加和自定义工具栏皮肤选择器,欢迎下载相关组件体验!

需要界面开发、IDE工具研发中文教程资料的小伙伴,记得私信我~ 3020

ChatGPT高效制作PPT:从内容生成到设计优化全流程

人工智能技术正在改变传统办公文档的创作方式,其中自然语言处理(NLP)与生成式AI的结合为内容创作带来了革命性突破。以ChatGPT为代表的大语言模型(LLM)能够理解复杂指令并生成结构化内容,其核心原理是通过海量数据训练获得的语义理解和文本生成能力。在办公自动化场景中,这种技术特别适合解决PPT制作中的两大痛点:内容创作耗时和逻辑架构困难。通过精心设计的提示词工程,AI可以快速输出包含核心要点、数据支撑的完整内容框架,甚至直接生成Markdown格式的代码以便快速转换为PPT。对于商业计划、项目汇报等高频

weixin_42613018的博客 493

高通平台蓝牙学习-- 基于WCN6750 Bluetooth 5.2的讲解

摘要:蓝牙5.2解决方案WCN6750具备多项先进特性:完全兼容5.2标准及ANT+协议,支持2Mbps高速BLE和长距离传输;采用射频集成方案,与WLAN共享天线并支持5G并发;内置功率放大器,支持Class1/2传输;提供双音频流和Slimbus接口优化。其HCI UART接口支持3.2Mbps速率,通过BlueZ协议栈实现蓝牙5.2功能,包括2Mbps模式和长距离传输,符合核心规范要求。(149字)

专业开发者的博客,一个从事Android WiFi和蓝牙的工程师 3万+

动态添加DevExpressBar中的菜单

unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, dxSkinsCore, dxSkinsDefaultPainters, dxSkinsdxBarPainter, dxBar,  cxLookAnd

火龙岛 4311

Ansible 面板工具之AWK ( Anssible Tower )界面介绍

整理这部分笔记博文内容为AWX和UI 界面的简单介绍理解不足小伙伴帮忙指正傍晚时分,你坐在屋檐下,看着天慢慢地黑下去,心里寂寞而凄凉,感到自己的生命被剥夺了。当时我是个年轻人,但我害怕这样生活下去,衰老下去。在我看来,这是比死亡更可怕的事。--------王小波这里AWX使用的是最新的版本AWX 21.7.0目前最新版是3.8.6,博客中的版本为3.5.0对于Redhat的,官网上看到在 2022 年 11 月之后不在维护了,改版之后现在叫,感兴趣小伙伴可以了解下虽然有AWX是。

山河已无恙 1303

C# BarSubItem 隐藏子菜单,根据反射原理用字符串创建对象

C# BarSubItem 隐藏子菜单说明1. BarSubItem 隐藏2. BarButtonItem 隐藏根据 字符串名称 ,创建控件(反射)3. 根据 控件类型 设置控件属性(反射) 说明 前台绘制全部菜单,根据角色展示菜单。数据库不让维护菜单之间的关系。为什么?我不知道! 本文用BarManager,BarSubItem,BarButtonItem,BarButtonItem 根据角色展示菜单 menu 表 里只有两个字段 menu_name ;button_name;角色菜单表里只有 rol

super_lily_666的博客 762

华为自研 ERP、Oracle EBS 与 SAP 上线时系统配置思路设计差异深度分析

本文对比分析了华为自研ERP、Oracle EBS和SAP S/4HANA三大ERP系统在上线配置思路上的核心差异。从架构设计看,华为采用分布式微服务架构,SAP采用分层服务架构,Oracle采用集中式一体化架构;在模块配置上,华为以业务场景为导向,SAP基于行业模板,Oracle强调模块独立性;数据迁移方面,华为侧重业务规则清洗,SAP注重数据质量监控,Oracle依赖标准化工具;流程适配上,华为系统随流程调整,SAP在框架内优化,Oracle需定制开发;定制开发模式差异明显,华为采用插件化扩展,SAP使

金牌架构师 1453

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

DevExpress窗体皮肤

相信很多朋友希望自己的软件可以非常漂亮,本文就简要介绍一下,对窗体换肤。 1、在程序入口处,即Program.cs添加如下代码:        DevExpress.UserSkins.OfficeSkins.Register();        DevExpress.UserSkins.BonusSkins.Register(); 2、所应用样式窗体需要继承自DevExpress.Xtr

我在努力,一直都在努力。 5814

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

DevExpress传统界面设计:ToolBar和工具条停靠控件、和popupMenu弹出菜单

工具条停放控件(bar dock controls)是工具条(toolbar)的容器,它们位于窗体或用户控件内用以容纳工具条对象。有regular和standalone两种工具条停放控件。        regular bar dock controls是由BarManager自动维护的,我们不用手动去创建它们。它们停靠在容器(比如窗体)的任意一边,以显示工具条。        Bar

可乐鸡翅 1万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

DevExpress控件使用

零零散散的先总结一下吧 1.TextEditor(barEditItem)取文本 string editValue = barEditItem1.EditValue.ToString(); //错误,返回null string editValue = ((DevExpress.XtraEditors.TextEdit)barEditItem).EditValue.ToStr

davinciyxw的专栏 2万+

DevExpress使用技巧总结

DevExpress是非常主流的.NET控件,目前全世界和中国都用很多用户使用,不过由于是英文版,初次接触的同学可能会觉得困难,这里就总结DevExpress常见的10个使用技巧。1.TextEditor(barEditItem)取文本string editValue = barEditItem1.EditValue.ToString(); //错误,返回nullstring editVa...

weixin_30393907的博客 289

DevExpress动态生成菜单、子菜单

http://blog.youkuaiyun.com/hhf383530895/article/details/6120750 http://fen960.blog.sohu.com/52577728.html

lgwias的专栏 2056

【C++】创建动态的文本编辑框

if (m_VectFloodImages.empty()) { return; } //show curve images m_LVT_Basic->m_showFloodCurve=true; CRect oRect; this->GetClientRect(oRect); int nWidth=oRect.Width(); int nHeigth=o

研究僧只干活不吃饭 3973

DevExpress:颜色选择控件ColorPickEdit

本文为我的.NET控件库DevExpress使用笔记,我的DevExpress版本为13.1 1、控件类型全称:DevExpress.XtraEditors.ColorPickEdit 2、控件所在程序集:DevExpress.XtraBars.v13.1.dll 3、工具箱内分类:DX...

2695

DevExpress控件给数据列表中特殊行数据设置颜色

privatevoidSetGridRowStyle() { //颜色设置 if( !string.IsNullOrEmpty(txtCphm.Text) ) { MainView.FormatConditions.Clear(); De...

weixin_30359021的博客 284
上一篇: 设置当前表页不滚动行的位置
下一篇: 目录树节点的拖动
fengjunwang
博客等级 码龄17年 0粉丝 1原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值