作成日: 2014/09/26 最終更新日: 2014/09/26
文書種別
使用方法
詳細
True DBGrid for WinFormsにパスワード文字列を表示する機能はありませんが、カスタムエディタにTextBoxを設定し、TextBoxのPasswordCharプロパティを使用することで入力中の文字列を"*"のような値で表示することができます。また、非編集モード時(通常の表示状態)は、FormatTextイベントでセル内の文字列を全て"*"で表示することで、パスワード入力のような処理が可能です。FormatTextイベントについては、製品ヘルプの下記項目も参照してください。
[True DBGrid for WinForms ユーザーガイド]
- [True DBGrid for WinForms の使い方]
- [データ表示テクニック]
- [テキストの書式設定]
- [カスタムイベントハンドラを使って書式設定する]

◎サンプルコード(VB)
◎サンプルコード(C#)
private void Form1_Load(object sender, EventArgs e)
{
...
c1TrueDBGrid1.AllowAddNew = true;
// 0列目のカスタムエディタにTextBoxを設定
TextBox tb = new TextBox();
tb.BorderStyle = BorderStyle.None;
c1TrueDBGrid1.Columns[0].Editor = tb;
// TextBoxのPasswordCharプロパティを使用して、
// 入力中の文字列を"*"で表示
tb.PasswordChar = '*';
// FormatTextイベントを発生させます
c1TrueDBGrid1.Columns[0].NumberFormat = "FormatText Event";
}
// FormatTextイベントを使用して、
// 非編集時に0列目のセルの値を全て"*"に変更
private void c1TrueDBGrid1_FormatText(object sender, C1.Win.C1TrueDBGrid.FormatTextEventArgs e)
{
if (e.ColIndex == 0)
{
e.Value = new string('*', e.Value.Length);
}
}
[True DBGrid for WinForms ユーザーガイド]
- [True DBGrid for WinForms の使い方]
- [データ表示テクニック]
- [テキストの書式設定]
- [カスタムイベントハンドラを使って書式設定する]

◎サンプルコード(VB)
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
...
C1TrueDBGrid1.AllowAddNew = True
' 0列目のカスタムエディタにTextBoxを設定
Dim tb As New TextBox
tb.BorderStyle = BorderStyle.None
C1TrueDBGrid1.Columns(0).Editor = tb
' TextBoxのPasswordCharプロパティを使用して、
' 入力中の文字列を"*"で表示
tb.PasswordChar = "*"
' FormatTextイベントを発生させます
C1TrueDBGrid1.Columns(0).NumberFormat = "FormatText Event"
End Sub
' FormatTextイベントを使用して、
' 非編集時に0列目のセルの値を全て"*"に変更
Private Sub C1TrueDBGrid1_FormatText(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FormatTextEventArgs) Handles C1TrueDBGrid1.FormatText
If e.ColIndex = 0 Then
e.Value = New String("*", e.Value.Length)
End If
End Sub
...
C1TrueDBGrid1.AllowAddNew = True
' 0列目のカスタムエディタにTextBoxを設定
Dim tb As New TextBox
tb.BorderStyle = BorderStyle.None
C1TrueDBGrid1.Columns(0).Editor = tb
' TextBoxのPasswordCharプロパティを使用して、
' 入力中の文字列を"*"で表示
tb.PasswordChar = "*"
' FormatTextイベントを発生させます
C1TrueDBGrid1.Columns(0).NumberFormat = "FormatText Event"
End Sub
' FormatTextイベントを使用して、
' 非編集時に0列目のセルの値を全て"*"に変更
Private Sub C1TrueDBGrid1_FormatText(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FormatTextEventArgs) Handles C1TrueDBGrid1.FormatText
If e.ColIndex = 0 Then
e.Value = New String("*", e.Value.Length)
End If
End Sub
◎サンプルコード(C#)
private void Form1_Load(object sender, EventArgs e)
{
...
c1TrueDBGrid1.AllowAddNew = true;
// 0列目のカスタムエディタにTextBoxを設定
TextBox tb = new TextBox();
tb.BorderStyle = BorderStyle.None;
c1TrueDBGrid1.Columns[0].Editor = tb;
// TextBoxのPasswordCharプロパティを使用して、
// 入力中の文字列を"*"で表示
tb.PasswordChar = '*';
// FormatTextイベントを発生させます
c1TrueDBGrid1.Columns[0].NumberFormat = "FormatText Event";
}
// FormatTextイベントを使用して、
// 非編集時に0列目のセルの値を全て"*"に変更
private void c1TrueDBGrid1_FormatText(object sender, C1.Win.C1TrueDBGrid.FormatTextEventArgs e)
{
if (e.ColIndex == 0)
{
e.Value = new string('*', e.Value.Length);
}
}
旧文書番号
69951