我有一个继承的表格并将其用作设置表格。我要求用户输入要存储的名称,我想根据输入数据动态更改表单标题(表单的文本属性)。但是如果我更改基本表单标题,则会发生溢出。我还在基本表单中创建 FormTitle 属性以保存当前表单名称。
例如,我的应用程序名称是 SerenaIR,我想为我的所有表单显示以下样式。
塞雷纳航空 | 店铺名称 |
表格名称 ex: SerenaAIR | 超市 | 销售
FormTitle 属性
private string _frmTitle;
/// <summary>
/// current form title for showing on title bar.
/// </summary>
[Category("JSCustomizer"),
Description("The text that is displayed on form title bar.")]
public string FormTitle
{
get { return _frmTitle; }
set
{
try
{
_frmTitle = value;
Invalidate();
var appPreName = Properties.Settings.Default.AppNamePre + @" " + Properties.Settings.Default.AppName;
if(_frmTitle.Length < 3)
{
base.Text = appPreName;
}
else
{
base.Text = appPreName + @" | " + _frmTitle;
}
}
catch
{
return;
}
}
}
在设置表单中,当我想通过以下代码更改标题时,我保存有关商店名称和基本表单的设置,所有继承的表单都会引发错误!
private void JSfrmBaseLoad(object sender, EventArgs e)
{
Text = Properties.Settings.Default.AppNamePre + @" " + Properties.Settings.Default.AppName;
}