MicrosoftのVisualC#2008 Express Editionを使用するC#プロジェクトにAboutBox1という名前のAboutボックスがあります。デザインビューで希望どおりに表示するようにしましたが、[ヘルプ]メニューの[バージョン情報]リンクをクリックしたときに表示するにはどうすればよいですか?
このコードにより、[バージョン情報]ボックスが表示されますが、空白に見えます。それは私が設計したものではありません。
private void aboutToolStripMenuItem_Click(object sender, EventArgs e)
{
AboutBox1 box = new AboutBox1();
box.ShowDialog();
}
任意の考えや提案をいただければ幸いです。ありがとう。
とった。
アバウトボックスは、プロジェクトのアセンブリプロパティから削除されます。
「プロジェクト」->「ProjectName」プロパティ->「アセンブリ情報」に移動します。
そこにすべての情報を設定します。
プロパティエクスプローラーで情報を設定しようとすると、実行時にこのウィンドウに表示されている情報によって上書きされます。
乾杯、マイク
デザイナーの表面がおかしくなったように聞こえます...保存を押して再構築しましたか?おそらく、IDEを閉じて再度開き、慎重に設計されたフォームがまだきれいであることを確認しますか?
ところで、ShowDialog
を使用する場合は、using
も使用する必要があります(ShowDialog
で表示された場合はDispose()
自体を使用しないため):
using(AboutBox1 box = new AboutBox1()) {
box.ShowDialog(this);
}
AboutBoxフォームのコンストラクターで「InitializeComponent」へのメソッド呼び出しを削除しましたか?
コンストラクターは少なくとも次のようになります。
public partial class AboutBox : Form
{
public AboutBox()
{
InitializeComponent ();
}
}
InitializeComponentメソッド呼び出しは、コンストラクターの最初の行である必要があります。
プロジェクト/プロジェクト名/アセンブリのプロパティが見つかりませんでした。
しかし、「InitializeComponent();」の後の行をコメントアウトすることは私にとってはうまくいきました。
これは私の見た目です:
public frmAboutBox1()
{
InitializeComponent();
//this.Text = String.Format("About {0}", AssemblyTitle);
//this.labelMyFFEProductName.Text = AssemblyProduct;
//this.labelVersion.Text = String.Format("Version {0}", AssemblyVersion);
//this.labelCopyright.Text = AssemblyCopyright;
//this.labelCompanyName.Text = AssemblyCompany;
//this.textBoxDescription.Text = AssemblyDescription;
}
私のようなアマチュアの場合、これらの行を見つけるには、プロジェクトエクスプローラーのAboutBoxをクリックし、[コードの表示]ボタン[<>]を押します。
表示されても空白の場合、問題はAboutBox1にあります。そのコードのいくつかを見せてください。
以前に同じ問題に直面しましたが、InitializeComponent();
の下のステートメントを削除することで解決しました
デフォルトコード:
partial class AboutBox1 : Form
{
public AboutBox1()
{
InitializeComponent();
this.Text = String.Format("About {0} {0}", AssemblyTitle);
this.labelProductName.Text = AssemblyProduct;
this.labelVersion.Text = String.Format("Version {0} {0}", AssemblyVersion);
this.labelCopyright.Text = AssemblyCopyright;
this.labelCompanyName.Text = AssemblyCompany;
this.textBoxDescription.Text = AssemblyDescription;
}
}
私の最終コード:
partial class AboutBox1 : Form
{
public AboutBox1()
{
InitializeComponent();
}
}