Top > プログラミング > .NET Tips> DataGridViewにMaskedTextBoxを表示する

DataGridViewにMaskedTextBoxを表示する」への評価、コメント

評価

良い / 悪い = 9 / 0 (「良い」の割合 = 1.000 , 人気度 = 0.954

評価する

コメント一覧


通常のコメント
管理人 2012/06/10 (Sun) 01:24:27
> this.ValueではなくinitialFormattedValue引数を使うようにすれば安全(?)みたいです。

ご報告ありがとうございました。修正させて頂きます。

通常のコメント
MB68B09 2012/05/19 (Sat) 16:25:42
DataGridView.SelectionModeがFullRowSelectの場合、DataGridViewMaskedTextBoxCell.InitializeEditingControl()の「this.Value」で例外が発生しますね。
this.RowIndexが-1になっていているためにget内で例外が出る模様です。
this.ValueではなくinitialFormattedValue引数を使うようにすれば安全(?)みたいです。

通常のコメント
管理人 2012/04/9 (Mon) 00:49:32
スンさん、匿名さんからご指摘のEditingControlWantsInputKeyの不具合を修正します。かなり前から指摘されていたにもかかわらず放置してしまい申し訳ありませんでした。

評価の理由
匿名 2012/01/23 (Mon) 17:19:24
評価:良い
お世話になります。
本件に限らず、参考にさせて頂いております。

EditingControlWantsInputKeyの実装で
default:
return false;
とされている部分、正しくは
default:
return !dataGridViewWantsInputKey;
のようです。
「q」が入力できないのもコレが原因の様でした。

【参考】
http://social.msdn.microsoft.com/Forums/ja/csharpgeneralja/thread/132266fc-c84f-4dcb-abe7-10a23f7429df

通常のコメント
匿名 2011/09/13 (Tue) 19:59:50
単純に下記のコードだけでもいけますよ。

Private Sub grid_CellFormatting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellFormattingEventArgs) Handles grid.CellFormatting

If (e.ColumnIndex <> -1 AndAlso grid.Columns(e.ColumnIndex).Name = "UserPassword") Then

If (Not e.Value Is Nothing) Then

e.Value = New String("*", e.Value.ToString().Length)

End If

End If

End Sub

通常のコメント
スン 2010/06/30 (Wed) 17:23:50
下記様ですね、失礼しました^^;

通常のコメント
スン 2010/06/30 (Wed) 17:16:07
いつもお世話になっております。
こちらのコードを元にカスタムしたTextBoxを継承しましたところ、上記様と同様の問題に直面したのでちょっと調べてみました。
(他にも!や#も入力できないようです)

結果、どうもEditingControlWantsInputKeyイベントでReturn False しているのが問題のようです。

Return Not dataGridViewWantsInputKey

このように変更したところ、問題が解消されました。

通常のコメント
ターミネーチャン 2009/06/9 (Tue) 21:51:02
いつも活用させて頂いてております。

実は、DataGridViewの中で編集作業中ではなく、
表示中にRichTextBoxのSelectionColor等を利用したいと考えているのですが、
なにかよい方法はありませんでしょうか?

ご教授のほど、よろしくお願い致します。

通常のコメント
大変恩恵にあずかっているもの 2009/01/9 (Fri) 10:29:18
こちらのサイトには、いつも大変助けられております。
さて、こちらのコードをそのままコピペしまして、
サンプルを作っておりましたら、不思議の事に、アルファベットの半角小文字の"q"のみ入力できません。 大文字や全角は入力できます。 非常に不思議に思っております。
もし解決されている方があろましたら教えていただければと

コメントの投稿

[説明]