Custom を構築し、とMaskedTextBox
の値を変更し、 の顧客 EventHandler を追加しました。
クラスを構築し、それをフォームにドロップすると、カスタム クラスに追加したカスタム プロパティが表示されますが、変更は行われず、カスタム EventHandler も起動しません。 BeepOnError
AsciiOnly
MaskInputRejected
BeepOnError
AsciiOnly
誰かが私が間違っていたことを指摘できますか? 手動でフォームに追加すると、EventHandler は正常に動作します。
カスタム クラス;
public partial class BaseMaskedTextBox : MaskedTextBox
{
public string gsOrigValue { get; set; }
public string gsReadOnlyMode { get; set; }
public bool gbIsString { get; set; }
...
private void BaseMaskedTextBox_MaskInputRejected(Object sender, MaskInputRejectedEventArgs e)
{
System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "Character Position", e.Position);
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Reason Rejected", e.RejectionHint);
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "Input Mask Invalid...");
}
でInitializeComponent(
):
this.BaseMaskedTextBox1.AsciiOnly = <b>true</b>;
this.BaseMaskedTextBox1.BeepOnError = <b>true</b>;
this.BaseMaskedTextBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.BaseMaskedTextBox1.Location = new System.Drawing.Point(0, 0);
this.BaseMaskedTextBox1.Name = "BaseMaskedTextBox1";
this.BaseMaskedTextBox1.Size = new System.Drawing.Size(100, 21);
this.BaseMaskedTextBox1.TabIndex = 0;
this.BaseMaskedTextBox1.MaskInputRejected += new System.Windows.Forms.MaskInputRejectedEventHandler(this.BaseMaskedTextBox_MaskInputRejected);
this.ResumeLayout(false);