[英]Set Form.Text at designer time to a non-constant string
我form.Text
在VS属性网格上设置form.Text
,而是在应用程序的程序集信息中设置了正确的名称,以便在使用该应用程序的名称或版本的任何地方都需要在一个地方进行更改。
通常在Form1_Load
事件中设置form.Text
这样的form.Text
:
private void Form1_Load(object sender, EventArgs e)
{
this.Text = System.Windows.Forms.Application.ProductName;
}
这样,我只能在运行时看到程序集信息中设置的应用程序名称,而在设计时,我只有“ form1”,因此要更改此名称,我决定移动该行:
this.Text = System.Windows.Forms.Application.ProductName;
对于InitializeComponent()
方法,它确实起作用。 标题更改,但是:
有什么方法可以解决此问题,并获得我在程序集信息中设置的正确名称,而不是此Microsoft名称?
System.Reflection.Assembly.GetExecutingAssembly().GetName().Name
应包含在“项目->属性”下的“程序集名称”字段中设置的应用程序名称。
我不确定您的意思,但是可以将其放入App.config
设置文件中,如下所示:
<appSettings>
<add key="FormTitle" value="Your Title"/>
</appSettings>
然后像这样读回应用程序:
ConfigurationManager.AppSettings["FormTitle"]
或“ .resx”资源文件
您在设计时看到的表单位于实际解决方案之外的其他环境中。 因此,为什么您会看到此行为。
如果您确实要在设计时查看它,则应按照@Aniket指出的那样将产品名称存储在资源文件中或App.config
中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.