# DevExpress 中文文档

# 安装

📑 教程 1

📑 教程 2

# vs2019 添加 DevExpress

方法一:运行 DevExpress 相关工具

  • 进入 dev 安装目录,进入路径 "D:\DevExpress 14.2\Components\Tools"

  • 在路径栏输入 "cmd",进入命令窗口

  • 执行命令 ToolboxCreator.exe/ini:toolboxcreator.ini 等待添加 DevExpress 控件

方法二:手动安装

  • 打开工具箱,右键添加选项卡,自定义命名比如 "DevExpress"
  • 右键刚创建的选项卡 "DevExpress",点击 "选择项"
  • 在 framework 筛选出 DevExpress

# 汉化

下载汉化包,将汉化包重命名为 zh-CN

# 项目汉化

把汉化包放到 bin/debug

//main () 中添加
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("zh-CN");

# 统一汉化

1、把汉化包放至安装目录中: D:\DevExpress 20.2\Components\Bin\Framework

2、以管理员方式打开 Developer Command Prompt for VS 2019 (在开始菜单查找)

3、输入 cd D:\DevExpress 20.2\Components\Bin\Framework\zh-CN

4、成功进入,再输入命令 dir /B *.dll>temp.bat ,将会生成 temp.bat 文件

5、以文本方式打开汉化包中出现的 temp.bat 进行编辑:在所有的 DevExpress 前加上 gacutil -i

6、再次运行 D:\DevExpress 20.2\Components\Bin\Framework\zh-CN>temp.bat

# LabelControl 文本

# 属性

  • AutoSizeMode:调节文本框(对应 label 中的 AutoSize)
    • defult:默认
    • None:自由调整
    • Vertical:垂直方向 - 不可调整模式
    • Horizontal:水平方向 - 不可调整模式
  • Appearance:外观样式。可以设置字体、前景色、背景色和文本对齐方式等
  • AppearanceDisabled、AppearanceHover、AppearancePressed:在不同状态下的标签外观样式,例如禁用状态、悬停状态和按下状态
  • AutoEllipsis:指定是否自动省略长文本。如果设置为 true,则当标签文本超出控件宽度时,末尾部分将以省略号(…)显示。
  • AutoSize:指定是否自动调整标签大小以适应文本内容。可以根据文本的长度自动调整标签的宽度和高度。
  • Text:标签的文本内容
  • TextAlignment:对齐方式
  • Padding:内边距
  • LineAlignment:多行文本的对齐方式。适用于 AutoSize 设置为 true 且文本跨多行显示时。
  • UseMnemonic:是否启用助记符。如果设置为 true,则标签文本中使用的 "&" 符号将被解释为助记符。
  • ImageOptions:显示图片 / 图标
  • AllowHtmlString:链接效果,在 Text 写入 a 标签

# XtraForm

添加项,选择 DevExpress v20.2 Template Gallery 模板

派生于 Form,提供了 Form 的更换皮肤功能

  • LookAndFeel:整个项目采用统一风格
    • SkinName:皮肤设置,UserDefaultLookAndFeel 和 UserWindowsXPTheme 设置为 false 才可生效
  • TopMost:窗体置顶
  • WindowState:窗体最大化、最小化、常规
  • ShowInTaskbar:出现在任务栏,默认开启

# SimpleButton

  • 外观渐变(单独样式)不生效:LookAndFeel ➡ Style:UItraFlat、UserDefaultLookAndFeel:false

# TextEdit 单行文本框

# 格式化

MaskSetting(属性 ➡ Properties ➡ MaskSetting ➡ 设置格式)

DisplayFormat

  • FormatType:Custom(自定义)
  • FormSrting:设置显示的格式,例如: Price:{0:c2}

属性 Text(string)不一定等于 EditValue(object)

# 文本代替

  • PasswordChar:属性 ➡ Properties ➡ PasswordChar

# 提示

  • NullText:设置提示文字
  • AllowNullInput:是否允许为空
  • ShowNullValuePrompt:

# 设置文本大小写

  • CharacterCasing
    • Lower:小写
    • Upper:大写

# 事件

  • EditValueChanged:值发生改变后
  • EditValueChanging:值将要发生改变

# ButtonEdit 文本框(内置按钮)

  • AutoHeight:自动高度

# 按钮

  • ImageOptions:选择 icon
  • King:Glyph(自定义图标)才会显示 icon

# 事件

  • ButtonClick:内置按钮事件
  • EditValueChange:判断是否输入、有值
演示:不同按钮执行不同语句
private void buttonEdit1_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
{
  EditorButton btn = e.Button;
  if (btn.Kind == ButtonPredefines.Ellipsis)
  {
    OpenFileDialog file = new OpenFileDialog(); // 打开文件夹
    if (file.ShowDialog() == DialogResult.OK)
    {
      buttonEdit1.EditValue = file.FileName; // 显示文件名
    }
  }
  else if (btn.Kind == ButtonPredefines.Glyph && btn.Caption == "Search")
  {
    MessageBox.Show("你点击了搜索按钮");
  }
  else if (btn.Kind == ButtonPredefines.Glyph && btn.Caption == "Add")
  {
    MessageBox.Show("你点击了添加按钮");
  }
}

# CheckEdit 单选、复选框

  • Properties ➡ AllowGrayed:是否允许有第三种状态(不确定状态) ➡ CheckState 出现 Indeterminate

  • AutoHeight:是否自动高度

  • Properties ➡ CheckBoxOptions ➡ Style:选择样式

  • Properties ➡ RadioGroupIndex:设置相同的值,可变成单选

  • Properties ➡ GlyphAlignment:选择框位置(居左、居中、居右)

  • 设置选中的三种状态值 checkEdit1.EditValue 来获取

    • ValueChecked:设置类型才可填入值

    • ValueGrayed

    • ValueUnchecked

初始化时,EditValue 为 false/true,改变勾选状态后,EditValue 的值就是我们设置的值了

# GridControl 表格

1、去除 GridView 头上的 Drag a column header here to group by that column

点击 Run Designer ➡ 找到 Views 中的 OptionsView ➡ 将 ShowGroupPanel 设置为 false

# GridView

# 选中取消

// 方法 1:取消选中 gridView 中的所有行
gridView.ClearSelection();
// 方法 2:遍历当前选中的行并逐一取消选择
int[] selectedRows = gridView.GetSelectedRows(); // 获取当前选中行的索引
foreach (int rowHandle in selectedRows) // 遍历选中的行并取消选中
{
    gridView.UnselectRow(rowHandle);
}

# 获取指定行的值

// 获取指定行的值
gridView.GetRowCellValue(idx, "USER_NAME").ToString().Trim(); // 获取第 idx 行 USER_NAME 列的值
// 设置指定行的值
gridView.SetRowCellValue(idx, "USER_NAME", "要赋的值");

# TreeList 树形结构

# 单击节点以选中或取消选中

确保你的节点支持 CheckState 属性。如果没有设置 CheckBox,可能需要先启用

private void treeList2_NodeClick(object sender, DevExpress.XtraTreeList.NodeClickEventArgs e)
{
    // 写法 1:检查当前节点的 CheckState
    if (e.Node.CheckState == CheckState.Checked)
    {
        e.Node.CheckState = CheckState.Unchecked; // 取消选中
    }
    else
    {
        e.Node.CheckState = CheckState.Checked; // 选中
    }
    // 写法 2
    e.Node.CheckState = e.Node.CheckState == CheckState.Checked ? CheckState.Unchecked : CheckState.Checked;
}

# BarDockControl

# DateEdit

# SpinEdit

显示小数点位数

  • DisPlayFormat
  • EditFormat

# MemoEdit

# XtraScrollableControl

# BarStaticItem

# Bar

# ToolbarFormControl

更新于

请我喝奶茶⌯oᴗo⌯

呆鸭 微信支付

微信支付

呆鸭 支付宝

支付宝