を私はあなたが表示するtextBox2
を使用していると仮定しています複数のメッセージ(=
ではなく=+
を使用しています)。ただし、ユーザーがまだ入力している場合は、同じメッセージを2回表示する必要はありません。
そのような場合、あなたはこれらの3つのオプションのいずれかを使用することができます.. Leave
イベントを使用するには、次のようなもの
1-:この場合
private void textBox1_Leave(object sender, EventArgs e)
{
if (textBox1.Text.StartsWith("-"))
{
textBox2.Text += "\r\n Please do not use other characters \r\n";
}
}
を、メッセージはtextBox1
がフォーカスを失ったときにのみ表示されます。
2 - あなたが入力するが、1つの時間を表示する一方でメッセージを表示したい場合は、あなたがこのような何かを行うことができます:
bool Alerted;
private void textBox1_Enter(object sender, EventArgs e)
{
Alerted = false;
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (Alerted) { return; }
if (textBox1.Text.StartsWith("-"))
{
Alerted = true;
textBox2.Text += "\r\n Please do not use other characters \r\n";
}
}
これは、メッセージは表示されません再びtextBox1
までフォーカスを取り戻す。 ( - )あなたはメッセージがない限り、再度表示されることはないしたい場合は
3-及び削除され、入力された場合も、その後、Enter
使用していない、とあなただけ使用することができ、次の
bool Alerted;
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (textBox1.Text.StartsWith("-"))
{
if (Alerted) { return; }
Alerted = true;
textBox2.Text += "\r\n Please do not use other characters \r\n";
}
else
{
Alerted = false;
}
}
一つ最後のノート:あなたはおそらく、あなただけの行の末尾に追加することができ、開始とメッセージの最後に\r\n
を必要としません。
希望するもの:
'+ ='の代わりに '='を使用しますか? – CodeCaster
textbox1が " - "で始まるときにいつでもプログラムにメッセージを追加してほしい –
あなたの質問にはステップバイステップで何が起こりたいのか、そして「いつも」とは何かを意味するように質問してください。 – CodeCaster