2

私は WinForms 開発の初心者です。現在、.Net 2.0 で開発されたアプリケーションを保守しています。

アプリケーションには、単位付きの値を表示する長さという列を持つグリッドがあります。イベントを使用CellFormattingしてセル値をフォーマットしました。それ以外の場合は単なる数値です。

しかし、ユーザーが編集を開始するときに単位を表示したくないので、ユーザーは数字のみを入力できるようにする必要があります。

それを行う簡単な方法はありますか?グリッドに設定するイベントまたはプロパティ?

ここに画像の説明を入力

4

3 に答える 3

1

EditingControlShowing現在のセル形式を変更するには、イベントを処理する必要があります。

    private void dataGridView1_EditingControlShowing(object sender, 
                               DataGridViewEditingControlShowingEventArgs e)
    {
        if (dataGridView1.CurrentCell.ColumnIndex == 1)
        {
            e.CellStyle.Format = "#";
            e.Control.Text = dataGridView1.CurrentCell.Value.ToString();
        }
    } 
于 2012-07-05T08:42:22.993 に答える
1

CellStyle Builder を使用してフォーマット文字列を設定し、カスタムフォーマットを # mm に設定できます

どうやってするの :

  1. [グリッド] を右クリックし、[プロパティ] をクリックします。
  2. プロパティ ウィンドウで、列の編集ダイアログをポップアップ表示するボタンをクリックします。
  3. 書式を設定するセルを選択します
  4. 列の編集ダイアログの右側で、DefaultCellStyle プロパティを選択します。
  5. DefaultCellStyle プロパティをクリックすると、CellStyleBuilder ダイアログが開きます。
  6. ここに format プロパティがあります。これにより、Format String ダイアログが表示されます。
  7. カスタム プロパティを #mm に設定すると、下部にプレビューが表示されます
  8. [OK] をクリックします ... グリッドに戻るまで...
于 2012-07-05T08:32:20.550 に答える