0

アプリに表示されるデータグリッドの色をユーザーが変更できるようにしようとしています。

これには、ユーザー設定とカラー ダイアログ ボックスを使用します。

問題は、色を更新しようとすると表示されず、アプリを閉じてから再度開いて変更を確認するか、完全に異なる DGV (タブコントロールにあります) をロードする必要があることです。

更新時に使用するコードは次のとおりです。

AlternatingRowsDefaultCellStyle.BackColor = Properties.Settings.Default.CellBackColor1;

私は何かを逃していますか?

DGV を更新しようとしましたが、何も変わりません。

4

1 に答える 1

0

Buttonを開きColorDialog、ユーザーが色を選択するのを待つフォームにを追加しました。ユーザーが[OK]ボタンを押すと、最初に設定が保存され、次にdataGridView.CellStyle.BackColorがユーザーが選択した色に設定されます。これにより、フォームが正しい背景色ですぐに更新されます。

private void button1_Click(object sender, EventArgs e)
{
    if (colorDialog1.ShowDialog() == DialogResult.OK)
    {
        Properties.Settings.Default.CellBackColor1 = colorDialog1.Color;
        dataGridView1.AlternatingRowsDefaultCellStyle.BackColor = colorDialog1.Color;
    } 
}

あなたForm.LoadForm.FormClosingイベントが設定の保存を処理すると思います。

于 2012-08-08T05:54:56.733 に答える