0

データグリッドを組み込んだフォームを含む WinForms プロジェクトがあります。フォームの Load イベントで呼び出す 2 つのメソッドがあります。

SQL サーバーからデータを取得する PopulateForm() メソッドがあります。

続いて、グリッド内のデータ行を循環し、コードで指定した条件に従って色付けする FormatDatagrid() メソッドが続きます。

これらのメソッドの両方を再度呼び出すフォームに [更新] ボタンも追加しました。

フォームが読み込まれると、データグリッドには正しいデータがすべて入力されますが、フォーマットされていません。

それでも、更新ボタン (まったく同じコードを実行します) をクリックすると、データグリッドは必要に応じて正しくフォーマットされます。

Load イベントの機能を誤解しているようです。コードをステップ実行すると、フォームが実際に開かれる前にプログラムが書式設定コードを実行していることに気付きます。これは、書式設定が Load イベントで機能しない理由だと思います。

ユーザーがフォームを開いたときにデータグリッドがすぐにフォーマットされるようにするには、どのイベントを使用する必要がありますか。

4

1 に答える 1

3
     public Form1()
    {
        InitializeComponent();
        PopulateForm();
        FormatDatagrid();
    }

これでうまくいくはずです

于 2012-11-16T13:24:18.350 に答える