如何防止覆盖 WinForm 控件中的“默认”值?

2023-12-09

我正在尝试学习并掌握 C# 的功能和方式。我曾经是一名 Visual Foxpro (VFP) 开发人员,多年来通过创建自己的要在应用程序范围内使用的用户控件基线,在视觉继承方面有些被宠坏了。

在尝试学习 C# 中的相似之处时,我陷入了困境。假设我派生了自己的标签控件(控件是标签的子类),使用字体“Arial”定义,10 磅。然后,在我将其添加到的任何表单上,设计器将自动预填充一些属性值,这些值可以在 Form 类的“Designer.cs”部分中看到。

this.LabelHdr2.AutoSize = true;
this.LabelHdr2.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.LabelHdr2.ForeColor = System.Drawing.Color.Blue;
this.LabelHdr2.Location = new System.Drawing.Point(150, 65);
this.LabelHdr2.Name = "LabelHdr2";
this.LabelHdr2.Size = new System.Drawing.Size(158, 22);
this.LabelHdr2.TabIndex = 5;
this.LabelHdr2.Text = "LabelHdr2";

我想防止每次在窗体上放置控件时生成诸如字体、颜色、大小、自动大小之类的内容。如果我后来决定将字体从“Arial”10 更改为“Tahoma”11,我将必须返回所有表单(以及任何其他自定义控件)并进行编辑以进行更改。

在 VFP 中,如果我更改基类的任何内容,所有表单都会自动识别这些更改。我不必编辑任何内容(除了通过大小影响可能进行的对齐之外)...但是颜色、字体和其他所有内容在 VFP 中都没有问题...

在 C# 中,我必须返回并更改每个表单,以便它可以被类的新/更新值识别...

有没有合理的方法来避免这种情况?


不要使用“ReadOnlyAttribute”,而是尝试使用“默认值属性如果我没记错的话,如果当前值与“DefaultValueAttribute”中存储的值匹配,则设计者不应创建代码来设置属性。

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

如何防止覆盖 WinForm 控件中的“默认”值? 的相关文章

随机推荐

  • 如何使用 asternet 从星号获取变量值

    我用asterNet用于管理事件 INasterisk 我需要获取变量的值 result 在 c 中来自dialplan query exten gt test 1 NoOp test same gt n Answer same gt n
  • 列出来,不丢失参考

    面试回来 我与您分享 欢迎一个好的 准确的答案 目的是 你有一个静态方法 这个方法接收一个IList
  • c 将 char* 拆分为 char**

    我正在从文件中读取一行 逐个字符 使用 fgetc 其中所有字段 名字 姓氏 均由 我现在想做的是创建一个char 将所有字符添加到其中并替换 by 0这样我就可以有效地获得所有字段的列表 这实际上有可能吗 当我创建一个 char 时 例如
  • 如何重置反应组件,包括所有可传递可达的状态?

    我偶尔会有一些概念上有状态的反应组件 我想重置它们 理想的行为相当于删除旧组件并读取新的原始组件 React提供了一个方法setState它允许设置组件自己的显式状态 但排除隐式状态 例如浏览器焦点和表单状态 并且还排除其子级的状态 捕获所
  • 更改工作文件夹位置

    我想更改工作文件夹的位置 如何在我的 SVN 存储库中进行更改 我正在使用 TortoiseSVN 客户端 如果您想移动整个工作副本 只需将其移动到文件系统中即可 如果您想移动工作副本中的文件夹并稍后提交移动 请右键单击该文件夹 然后选择
  • 小牛队上的 PyQt4 和 python 3

    我在 Xubuntu 中制作了一个 python 应用程序 目前正在尝试在 Mavericks 上运行 该项目的 GUI 部分使用 PyQt4 我目前正在尝试在 Mavericks 上安装 PyQt4 并在运行时出现以下错误brew ins
  • .NET 嵌套类

    我正在开发的当前类库将有一个基类 Field 其中包含超过 50 个特定的 字段 类型 这些类型将从 Field 继承并嵌套以保持可读性 例如 abstract class Field public int Length get set p
  • 如何解析来自github的csv?

    jQuery ajax url https raw githubusercontent com CSSEGISandData COVID 19 master csse covid 19 data csse covid 19 time ser
  • knitr:将计算机输出包装在 HTML 标签中

    使用knitr 我试图将输出包装在特定类的div 中 例如 代码如下 r Print the pressure data set head pressure 我希望将输出 而不是代码 包装在 div 中 例如 div class mycla
  • 带有连接列的 Flask SQLAlchemy 查询

    我有一个这样的模型 class User db Model id db Column db Integer primary key True first name db Column db String 64 index True last
  • Excel 宏加载数组

    我不知道如何表达这个问题 但我遇到了一个问题 我需要将一组工作表中的名称列表加载到单独的数组中 例如 Sheet 1 Column A有10个名字要加载到array1 Sheet 2 Column A有14个名字要加载到array2 我知道
  • 一个 Pod 中存在多个容器

    我正在从 openshift 2 迁移一个应用程序 该应用程序由 Java jetty 网络服务器和 mongo 数据库组成 Web服务器和mongo都需要访问持久存储 以及访问数据库的服务器 由于我可用的卷无法 我相信 由两个 pod 访
  • 使用 opam 安装适用于 Z3 的 ocaml API

    我想在我的 OCaml 程序中使用 Z3 使用opam 我做到了 opam install z3 eval opam env 然后尝试编译 ocamlfind ocamlopt o main package z3 linkpkg main
  • 如何将 cassandra 数据从一个集群复制到另一个集群

    我有 2 个 cassandra 集群 位于不同的数据中心 请注意 这是 2 个不同的集群 而不是具有 multidc 的单个集群 并且两个集群具有相同的键空间和列族模型 我希望以最有效的方式将列族C的数据从集群A复制到集群B 我可以通过
  • 编辑格式化十进制文本字段时光标移至末尾 - Swift

    我正在格式化UITextField这样在输入时它就变成逗号分隔 十进制样式 So 12345678变成12 345 678 现在当我编辑UITextField 说我想删除5 当时我点击之后5并删除它 但光标立即移动到文本末尾 之后8 这是我
  • Spring Cloud Stream - 在应用程序初始化后发送消息

    我正在尝试使用 spring cloud stream 向rabbitmq发送一条简单的消息 基本上代码如下所示 EnableBinding Source class SpringBootApplication public class S
  • 创建丢失的目录/文件结构 - Python

    我正在编写一个函数来执行一些操作 log文件 程序检查是否 logs ansible log在继续之前存在 如果 logs ansible log不存在 它应该继续创建文件 目录结构 两者之前都不存在 try if not os path
  • ios:为照片添加实时滤镜效果

    我想编写一个可以拍照的ios应用程序 但我想实时过滤照片预览 我的意思是在名为 CamWow 的应用程序中实现 这是该应用程序的视频 http www youtube com watch v L o Bx08YZE 我很好奇这是如何做到的
  • EXPECTED_INTEGER — Square 支付门户存在问题

    我在通过电子商务网站接受付款时遇到问题 这似乎只是随机发生的 我之前已经毫无问题地接受了付款 但这种情况经常发生 Square API 没有任何错误代码的描述 Array 0 gt stdClass Object category gt I
  • 如何防止覆盖 WinForm 控件中的“默认”值?

    我正在尝试学习并掌握 C 的功能和方式 我曾经是一名 Visual Foxpro VFP 开发人员 多年来通过创建自己的要在应用程序范围内使用的用户控件基线 在视觉继承方面有些被宠坏了 在尝试学习 C 中的相似之处时 我陷入了困境 假设我派