[英]Overriding Form.Text property
我試圖覆蓋Form.Text ,以便在出現在表單上之前修改Title
。
作為概念證明,我創建了這個類,它將用於代替直接繼承自Form
:
public class FormWithVersionNumber : Form
{
[SettingsBindable(true)]
public override string Text
{
get
{
return "tester";
}
}
}
我希望從中繼承的所有表單都有Title "tester"
但它始終是空白的。 我經歷過斷點,看不出有什么理由發生這種情況。 那是什么原因?
因為實際的Title
不是從Text
檢索的,而是從Control
的內部屬性WindowText
中檢索的。
以下是您可以執行的操作示例:
public partial class FormWithVersionNumber : Form
{
public override sealed string Text
{
get
{
return base.Text + " 1.0.0.0";
}
set
{
base.Text = value + " 1.0.0.0";
}
}
public FormWithVersionNumber()
{
InitializeComponent();
Text = "Some Title";
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.