私のmainFormでは、Form_Loadにインストールされているコンパウンドをチェックします。それらがインストールされていない場合は、別のフォーム(WaitingDialog)を呼び出してインスタンスの状態を表示します。私はwaitingDialogを以下のように呼び出します:他のフォームをmainFormから呼び出す - 他のフォームに表示されないコンポーネント
上記のコードでは、待機中のフォームは表示されますが、テキストのセットは表示されません。ラベルのその部分(テキストサイズ)は白い背景ですが、テキストは表示されません。
mainFormのForm_Loadでこれを実行する必要があります。これは、componetnが存在しないとmainFormをインストールし、appropメッセージがwaitingDlgフォームに表示されるためです。
これを対処するには、waitingDlgフォームでもテキストが表示されますか?
WaitingDialogコード:
public partial class WaitingDialog : Form
{
private string title;
private string message;
private bool cancel;
private ParentForm myParent = null;
public WaitingDialog()
{
InitializeComponent();
Cancel = false;
this.StartPosition = FormStartPosition.CenterScreen;
}
public WaitingDialog(ParentForm parent) : this()
{
if (parent != null)
{
myParent = parent;
this.StartPosition = FormStartPosition.Manual;
}
}
public WaitingDialog(string title, string message)
: this()
{
label1.Text = title;
msgLbl.Text = message;
// Title = title;
// Message = message;
}
private void WaitingDialog_Load(object sender, EventArgs e)
{
}
public string Title
{
get { return title; }
set { title = value;
label1.Text = title;
Invalidate();
}
}
public string Message
{
get { return message; }
set { message = value;
msgLbl.Text = value;
Invalidate();
}
}
public void set(string title, string message)
{
Title = title;
Message = message;
}
public void set(string title, string message, bool showButton)
{
Title = title;
Message = message;
this.cancelBtn.Visible = showButton;
}
public void showCancelButton(bool showButton)
{
this.cancelBtn.Visible = showButton;
}
public bool Cancel
{
get { return cancel; }
set { cancel = value; }
}
private void cancelBtn_Click(object sender, EventArgs e)
{
Console.WriteLine("CANCEL BUTTON CAUGHT");
Cancel = true;
}
}
// TRIED CAlling as :
waitingDlg = new WaitingDialog("Installing", "Components");
waitingDlg.Text = "Install Components"; //CAN SEE THIS IN TITLE
waitingDlg.Show();
しかし、ラベルのテキストが表示されないことができ、その背景(テキストのサイズ)が白です。
これが役に立ちます。あなたがもっと必要な場合は、もっと共有することがうれしいです。
ありがとう
あなたの 'set'メソッドは何ですか? – Kamyar
フォームを作成するときにラベルとタイトルを定数値に設定しています。これらのラベルとタイトルをデザイナーに設定するだけですか? –
WaitingDialogからsomコードを投稿できますか? – Bassetassen