Ejemplo n.º 1
0
        //編集コントロールを初期化する
        //編集コントロールは別のセルや列でも使いまわされるため、初期化の必要がある
        public override void InitializeEditingControl(
            int rowIndex, object initialFormattedValue,
            DataGridViewCellStyle dataGridViewCellStyle)
        {
            base.InitializeEditingControl(rowIndex,
                                          initialFormattedValue, dataGridViewCellStyle);

            //編集コントロールの取得
            DataGridViewMaskedTextControl maskedBox =
                this.DataGridView.EditingControl as
                DataGridViewMaskedTextControl;

            if (maskedBox != null)
            {
                //Textを設定
                string maskedText = initialFormattedValue as string;
                maskedBox.Text = maskedText != null ? maskedText : "";
                //カスタム列のプロパティを反映させる
                DataGridViewMaskedTextColumn column =
                    this.OwningColumn as DataGridViewMaskedTextColumn;
                if (column != null)
                {
                    maskedBox.Mask        = column.Mask;
                    maskedBox.CheckFormat = column.CheckFormat;
                }
            }
        }
Ejemplo n.º 2
0
        //新しいプロパティを追加しているため、
        // Cloneメソッドをオーバーライドする必要がある
        public override object Clone()
        {
            DataGridViewMaskedTextColumn col =
                (DataGridViewMaskedTextColumn)base.Clone();

            col.Mask        = this.Mask;
            col.CheckFormat = this.CheckFormat;
            return(col);
        }