为啥仅在更改表单大小和添加不是资源的按钮时添加资源 (.resx) 文件

Posted

技术标签:

【中文标题】为啥仅在更改表单大小和添加不是资源的按钮时添加资源 (.resx) 文件【英文标题】:Why Resource (.resx) file added on merely changing Form size and on adding button which is not resource为什么仅在更改表单大小和添加不是资源的按钮时添加资源 (.resx) 文件 【发布时间】:2011-02-05 10:18:00 【问题描述】:

1- 资源文件应该添加到应用程序中添加一些资源,如图像、音频或视频等。但如果我只是更改表单的大小,则在该特定表单下包含一个 .resx 文件。更改表单大小不会添加任何资源,那么为什么要使用此 .resx 文件?

2- 我在表单上放了一个按钮,并包含了一个资源文件;同样,这个按钮不是某种资源,它是在设计器文件中具有其创建信息的对象?

3- 在表单上放置按钮时添加了一个资源文件,但如果我删除此资源文件并运行应用程序,它会编译并运行且没有错误,并且按钮仍然存在。如果此按钮与资源文件有任何关系,那么一定是某种编译或运行时错误,如果 .resx 文件与按钮无关,那么为什么要添加它?

我正在使用 VS 2008。

编辑: 我已经添加了一个图片框并在其中添加了一个图像,现在这是资源。我删除了 From1.resx 文件,我期待一个错误,但不会再出现错误。在设计器文件图片框中,从具有 Resources.resx 文件的属性文件夹中引用图像。双击它,图像就在那里。那么 From1.resx 文件的用途是什么?

提前感谢您的帮助

【问题讨论】:

这很奇怪......我从来没有经历过。 我刚刚创建了一个 Windows 窗体应用程序并做了这个练习。 确实可以重复。 我想解决这个问题:Windows 窗体应用程序模板缺少 .resx 文件。设计师会尽快解决这个问题。 【参考方案1】:

似乎该表单的 resx 文件很可能与本地化相关。 IE。用于本地化文本内容,例如按钮上的文本。默认情况下,当您添加图像文件等资源时,它会放置在位于 My Project 文件夹中的应用程序 resx 文件中。因此,如果您设置了表单或项目语言集,我认为当您添加可以本地化的控件时,它总是会为该表单创建一个本地 resx 文件。

【讨论】:

【参考方案2】:

AFAIK 没有严格的要求,但如果甚至有 建议一个人可能可能被要求(即使它被证明是微不足道的)而不是完全跟踪一个人何时被绝对要求的细微差别.

我同意;在你描述的场景中,没有 resx 是必需的,但这不会让我不高兴。

(顺便说一句,它仍然发生在 VS2010 中 - 但我怀疑你不应该希望 太多 在 VS2010 中对 winforms 进行更改)

【讨论】:

它也没有让我感到不安,但我读过的所有文章和书籍都指出,无论何时添加资源,都会添加 .resx 文件,这就是我对这种行为感到好奇的原因。无论如何,谢谢。

以上是关于为啥仅在更改表单大小和添加不是资源的按钮时添加资源 (.resx) 文件的主要内容,如果未能解决你的问题,请参考以下文章

仅在至少选中一个复选框时才使用外部提交按钮提交表单

查看 html 表单是不是已更改

更改按钮图像时,更改按钮大小。为啥?

c# -ModelState.IsValid 仅在资源语言更改时返回 false?

在visual studio 2008中运行时,表单不显示更改

如何使用我添加到资源中的图像? C#