自定义 Visual Studio 如何为 .NET Framework 应用程序中的数据绑定控件创建标题

注释

此类 DataSet 和相关类是 2000 年代初的旧版 .NET Framework 技术,使应用程序能够在应用与数据库断开连接时处理内存中的数据。 这些技术对于使用户能够修改数据并将更改保留回数据库的应用特别有用。 尽管数据集是经过证实的成功技术,但新 .NET 应用程序的建议方法是使用 Entity Framework Core。 Entity Framework 提供了一种更自然的方式来将表格数据用作对象模型,并且具有更简单的编程接口。

当您将项从 “数据源”窗口 拖到设计器上时,需要特别考虑:在标题标签中,若发现两个或两个以上的单词连接在一起,列名称将被重新格式化为更易读的字符串。

可以通过在 HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\16.0\Data Designers 注册表项中设置 SmartCaptionExpressionSmartCaptionReplacementSmartCaptionSuffix 值来自定义这些标签的创建方式。

注释

在您创建此注册表项之前,它并不存在。

智能标题由输入到 SmartCaptionExpression 值的正则表达式控制。 添加 数据设计器 注册表项将替代控制标题标签的默认正则表达式。 有关正则表达式的详细信息,请参阅 在 Visual Studio 中使用正则表达式

下表描述了控制标题标签的注册表值。

注册表项 DESCRIPTION
SmartCaptionExpression 用于匹配模式的正则表达式。
SmartCaptionReplacement 显示 SmartCaptionExpression 中匹配的任何组的格式。
SmartCaptionSuffix 追加到标题末尾的可选字符串。

下表列出了这些注册表值的内部默认设置。

注册表项 默认值 说明
SmartCaptionExpression (\\p{Ll})(\\p{Lu})|_+ 匹配后接大写字符或下划线小写字符。
SmartCaptionReplacement $1 $2 $1 表示表达式的第一个括号中匹配的任何字符,$2 表示在第二个括号中匹配的任何字符。 替换为第一个匹配项、一个空格,然后是第二个匹配项。
SmartCaptionSuffix : 表示追加到返回的字符串的字符。 例如,如果标题为 Company Name,则后缀使其成为 Company Name:

谨慎

在注册表编辑器中执行任何作时要非常小心。 在编辑注册表之前备份注册表。 如果注册表编辑器不正确,可能会导致严重问题,可能需要重新安装作系统。 Microsoft不保证因错误使用注册表编辑器引起的问题能够得到解决。 你自行承担使用注册表编辑器的风险。

有关备份、编辑和还原注册表的信息,请参阅 高级用户的 Windows 注册表信息

修改“数据源”窗口的智能字幕行为

  1. 单击“ 开始 ”,然后单击“ 运行”打开命令窗口。

  2. 键入 regedit运行 ”对话框,然后单击“ 确定”。

  3. 展开 HKEY_CURRENT_USER>Software>Microsoft>VisualStudio 节点。

  4. 右键单击16.0节点,然后创建一个名为Data Designers的新密钥

  5. 右键单击 数据设计器 节点,并创建三个新字符串值:

    • SmartCaptionExpression
    • SmartCaptionReplacement
    • SmartCaptionSuffix
  6. 右键单击 SmartCaptionExpression 值,然后选择“ 修改”。

  7. 输入希望 数据源 窗口使用的正则表达式。

  8. 右键单击 SmartCaptionReplacement 值,然后选择“ 修改”。

  9. 输入您希望的格式化替换字符串,以便显示正则表达式中匹配的模式。

  10. 右键单击 SmartCaptionSuffix 值,然后选择“ 修改”。

  11. 输入要在标题末尾显示的任何字符。

    下次从 “数据源 ”窗口中拖动项时,将使用提供的新注册表值创建标题标签。

关闭智能字幕功能

  1. 单击“ 开始 ”,然后单击“ 运行”打开命令窗口。

  2. 键入 regedit运行 ”对话框,然后单击“ 确定”。

  3. 展开 HKEY_CURRENT_USER>Software>Microsoft>VisualStudio 节点。

  4. 右键单击16.0节点,然后创建一个名为Data Designers的新密钥

  5. 右键单击 数据设计器 节点,并创建三个新字符串值:

    • SmartCaptionExpression
    • SmartCaptionReplacement
    • SmartCaptionSuffix
  6. 右键单击 SmartCaptionExpression 项,然后选择“ 修改”。

  7. 输入 (.*) 作为值。 这将匹配整个字符串。

  8. 右键单击 SmartCaptionReplacement 项,然后选择“ 修改”。

  9. 输入 $1 作为值。 这会将字符串替换为匹配的值,即整个字符串,以便它保持不变。

    下次从 “数据源 ”窗口中拖动项目时,会使用未修改的标题创建标题标签。