如何更改 ColorDialog 的标题?

2023-12-03

我正在旋转一个ColorDialogWinForms 中的组件让用户选择特定自定义控件的图表的背景色和前景色。两个配置选项都位于配置对话框的同一页面上,因此我想在弹出对话框时将颜色对话框的标题设置为“背景颜色”以更改图表的背景,并将“网格颜色”设置为更改颜色网格的。这将提供一个有用的用户体验,如果用户不确定是否选择更改背景或网格颜色,他们将能够查看图表的标题。

不幸的是,文档似乎没有提到任何操纵的方法ColorDialog的标题。可以做出这样的改变吗?如果是这样,怎么办?


不幸的是,无法更改通用颜色选择器对话框的标题。一个可能的解决方案是找到或创建一个颜色选择器控件来托管在专用窗体中,当然,您可以分配适当的标题。或者你可以采用Office风格的选色以组合框的形式。

EDIT

受到罗布回答的启发,我找到了以下解决方案。它涉及继承自颜色对话框,从HookProc方法及调用设置窗口文本通过 P/Invoke:

public class MyColorDialog : ColorDialog
{
    [DllImport("user32.dll")]
    static extern bool SetWindowText(IntPtr hWnd, string lpString);

    private string title = string.Empty;
    private bool titleSet = false;

    public string Title
    {
        get { return title; }
        set
        {
            if (value != null && value != title)
            {
                title = value;
                titleSet = false;
            }
        }
    }

    protected override IntPtr HookProc(IntPtr hWnd, int msg, IntPtr wparam, IntPtr lparam)
    {
        if (!titleSet)
        {
            SetWindowText(hWnd, title);
            titleSet = true;
        }

        return base.HookProc(hWnd, msg, wparam, lparam);
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何更改 ColorDialog 的标题? 的相关文章

  • RegAsm regfile 开关没有提供与代码库开关相同的输出

    好吧 我知道这是非常具体的 但我为此浪费了整个工作日 所以我真的需要一些合理的解释 这样我的老板和我的妻子就不会解雇我 根据 MSDN The regfile开关 为程序集生成指定的 reg 文件 The codebase开关 在注册表中创
  • 如何让MCR启动时间快

    我将 matlab 程序转换为 net 程序集 即 dll 文件 我制作了一个控制台 C 应用程序 添加了 dll 文件并从 php 调用它 每次调用 exe 时都会调用 MCR 如何使 MCR 在服务器启动时初始化 并且即使在一段时间后调
  • 无法从另一个类中调用静态方法

    我有一个类文件 其中包含一个对输入字符串进行哈希处理的函数 using System using System Security Cryptography using System Linq using System Text using
  • 按下 Tab 键时 PictureBox 抛出“参数无效”ArgumentException

    我有一个表单 用户可以首先扫描到位图 扫描完成并加载位图后 我将启用 4 个文本框 每个文本框旁边都有一个名为 从图像剪切 的按钮 当用户单击该按钮时 他们可以在位图中单击并拖动以使用 MODI 获取选定的文本 除了一个恼人的错误之外 这一
  • 可选参数“必须是编译时常量”

    我有一个类分为两个部分文件 如下所示 public partial class PersonRepository BaseRepository
  • AspNetCore.SignalR:无法启动未处于初始状态的连接

    我无法让 ASP NET Core SignalR 应用程序正常运行 我有这个服务器端代码 public class PopcornHub Hub private int Users public async Task BroadcastN
  • 如何在 DataGridViewComboBoxCell 中选择一个值?

    我有 DataGridViewComboBoxCell 和 DataTable 表中的数据使用 DataSource 与 DataGridViewComboBoxCell 绑定 并设置 ValueMember 和 DisplayMember
  • 使用 .NET 删除目录中超过 3 个月的文件

    我想知道 使用 C 如何删除某个目录中超过 3 个月的文件 但我想日期期限可以很灵活 需要明确的是 我正在查找超过 90 天的文件 换句话说 应保留 90 天前创建的文件 并删除所有其他文件 像这样的事情不能做 using System I
  • Resharper 中的警告“未使用纯方法的返回值”

    我有一个关于我正在工作的 c 项目中从 Visual Studio 中的 Resharper 收到的警告的快速问题 警告是 不使用纯方法的返回值 发生这种情况的方法如下 private static bool FilePathHasInva
  • 在 .NET 中使用 NTFS 压缩来压缩文件夹

    我想在 NET 中使用 NTFS 压缩来压缩文件夹 我发现这个帖子 http bytes com groups net c 262874 making folder compressed 但它不起作用 它抛出异常 无效参数 Director
  • 任务取消最佳实践

    假设我有一个处理器 其工作是将文件保留回磁盘 这是作为Task当观察一个BlockingCollection
  • 启动浏览器并将数据从 winform 应用程序传递给它

    我有一个 winform 应用程序 需要在新的浏览器窗口中打开 URL 并向其传递数据 此外 数据太大而无法通过查询字符串参数 有没有办法启动一个新的浏览器实例并以某种方式将数据作为表单数据或会话传递 不完全是您问题的答案 但您可以在窗口中
  • C# 如何在列表框中用图标显示进程

    我正在创建一个应用程序 当按下按钮时 它将列出当前正在运行的进程 其图标就在它们旁边 private void materialFlatButton6 Click 1 object sender EventArgs e Process pr
  • 从平面列表创建层次结构

    我必须从平面列表构建第 n 级分层列表 我尝试使用这个答案中的解决方案 https stackoverflow com a 25532561 https stackoverflow com a 25532561但我没能得到正确的结果 这是我
  • 当向数据库表添加一列时,如何让 datagridview 显示更改?

    我在 Visual Studio 的项目中创建了一个数据集 该数据集指向我的数据库中的一个表 然后将 datagridview 控件绑定到它 现在我打开数据库并向数据库中的表添加另一列 然后我打开数据集并更新其配置以包含更改 然后我想更新
  • 将 X509 证书存储在数据库中

    为了访问网络服务 我需要一个证书 我生成了我的证书 openssl genrsa 1024 gt private key openssl req new x509 nodes sha1 days 1100 key private key g
  • 根据另一个列表的内容对列表进行排序

    我有一个包含整数列表的列表和另一个包含同时包含整数和字符串的类的列表 我想做的是按字母顺序对列表进行排序 将第一个列表中存在的条目放在前面 这是我的代码和预期输出 using System using System Collections
  • 实体框架 5 不清除导航属性

    我在 Entity Framework 5 中遇到了这个奇怪的问题 我在其中一个实体中有一个导航属性 我想将其设置为null 但由于某种原因 该属性只有在我第二次调用该属性时才会被清除 using var db new Entities v
  • 接口中的私有成员

    是否可以在 NET 接口中创建私有成员 我听说现在可以了 但我的 IDE 拒绝了 public interface IAnimal void SetDefaultName string name ChangeName name privat
  • 为什么 C# 编译的正则表达式比等效的字符串方法更快?

    每次我必须对字符串执行简单的包含或替换操作 其中我正在搜索的术语是固定值 时 我发现如果我获取示例输入并对其进行一些分析 则使用编译的正则表达式是几乎 总是比使用 String 类中的等效方法更快 我尝试过比较多种方法 hs是要搜索的 干草

随机推荐

  • 填充二进制对象内的漏洞

    我在填充黑色硬币内的白洞时遇到问题 因此我只能得到 0 255 个填充黑色硬币的二值图像 我已经使用中值过滤器来完成它 但在这种情况下 硬币之间的连接桥会增长 并且经过几次侵蚀后不可能识别它们 所以我需要一个简单的floodFill类似op
  • dc.js 饼图图例 - 如果结果为 0 则隐藏

    如果结果为 0 是否可以删除 隐藏饼图的图例 我有一个饼图 图例中有相当多的项目 当进行一些过滤时 删除不可用的图例会很棒 任何帮助 将不胜感激 重新绘制图表时 图例确实会呈现 但这里的问题是图例是从数据中绘制的 并且交叉过滤器不会自动消除
  • 构建可以创建内容作为 Plone 安装的一部分吗?

    我正在尝试为站点实现 Plone 的可重复部署 并使用构建 基本上遵循 Martin Aspeli 的书专业Plone 4开发 我可以使用我的源产品设置系统
  • Azure Data Studio 中的形状渲染

    我无法在 Azure Data Studio Notebooks 中运行 shap initjs 放弃在 Azure 社区论坛或其他地方查找问题 shap initjs test sample test x iloc 2000 shap v
  • Tcl 在使用“$”符号时添加花括号

    set B pc 0 mx 0 pi mx 0 puts B set A foreach x B lappend A x puts A 该程序的输出是 pc 0 mx 0 pi mx 0 pc 0 mx 0 pi mx 0 奇怪的是 tcl
  • 由 EditText 组成的自定义 ListAdapter 失去焦点,调用两次

    我正在制作一个电子商务应用程序 其购物车列表有一个自定义ListView其中包括EditText The EditText代表物品的数量 我在用OnFocusChangeListener检测客户何时完成更改商品数量 然后更新服务器上的购物车
  • 从根节点 XML 读取值

    我有这个 XML A型
  • 修复 UnboundLocalError

    def main cash float input How much money coins 0 def changeCounter n while True if cash n gt 0 cash n coins 1 else break
  • iOS 中 ImageView 的阴影效果

    我试图为我的 Imageview 提供阴影效果 就像这张图片中一样 但我面临的问题是阴影实际上从 Imageview 的底部可见 这是我添加阴影的代码 颜色什么的还是和这个不匹配 CAGradientLayer shadow CAGradi
  • PHP:发送WORD文档文件下载

    这个问题很琐碎 有很多答案 全部相同或几乎相同 但对于我的情况 它没有按预期解决 目标 使用 PHP 将 WORD 文件作为附件发送 简单 意思是 这是代码 send the file to the browser header Cache
  • 在 XSLT 导入/包含中使用动态 href?

    The
  • jquery mobile w/ php 登录表单

    我是使用 jquery mobile 和 php 的新手 提交后 我的登录表单上的提交按钮出现了一些问题 它转到 home php 页面 但 url 也没有转到 home php 它仍然是 login php 我怎样才能解决这个问题
  • Android中如何将session_id保存为cookie值并将其发送到服务器?

    我正在开发一个使用网络服务调用的应用程序 我正在调用我的登录网络服务 如下所示 String url http mydomaim com login php UserFunctions userFunction new UserFuncti
  • 如何在php中回显echo?

    我有一些基本的 PHP 代码 raceramps56 short My Test Product leftMenu div class leftMenuProductButton div 不会回显 PHP 代码 仅回显元素 我尝试过类似的事
  • pyspark fillna 不适用于 ArrayType 列

    我有一个 Spark 集群版本 3 1 2 我有以下输入数据 name gender arr James M 60000 Michael M 70000 31 Robert null 44 400000 Maria F 500000 12
  • RStudio 中与 Shiny 相关的问题

    我想在从 RStudio 选择 Shiny 中定义的选项时插入表格和图表 当选择 选择所有属性 选项时 我想在同一页面上显示 Table1 和 Graph1 如果我按选项 排除产生小于 L 且大于 S 的属性 则仅显示 Table2 和 G
  • 根据另一行中的值获取平均值

    我的 Excel 文件中有这样的值 QR QR AVG val1 q1 5 q1 3 q1 4 q2 7 q2 9 q3 10 q3 11 q3 12 q3 11 q4 5 q5 5 q5 7 我希望 QR AVG 字段表示由不同 QR 值
  • Azure Active Directory 与 MVC,客户端和资源标识同一应用程序

    跟进这个问题 如何在 ASP NET MVC 上执行 Azure Active Directory 单点登录和表单身份验证 我尝试在默认 MVC 4 的登录操作上编写简单的代码 该代码同时使用默认的表单身份验证和 Azure Active
  • Firebase / Firestore 将文档添加到子集合版本 9

    出于某种原因 我只是不明白 我想将新文档添加到子集合中 这是我的布局如下 Users Collection UID Document Lists Collection Category Document Category Document
  • 如何更改 ColorDialog 的标题?

    我正在旋转一个ColorDialogWinForms 中的组件让用户选择特定自定义控件的图表的背景色和前景色 两个配置选项都位于配置对话框的同一页面上 因此我想在弹出对话框时将颜色对话框的标题设置为 背景颜色 以更改图表的背景 并将 网格颜