Исходный код: < /p>
Код: Выделить всё
using System.Windows.Forms;
...
private void Txt_BackGroundColour_Trace_Clicked(object sender, EventArgs e)
{
if (Clr_Back_Trace.ShowDialog() == DialogResult.OK)
{
Main.Txt_Trace = this.Txt_Layout_Trace.Text;
clr_Back_Trace = Clr_Back_Trace.Color;
Txt_Preview_Trace.BackColor = clr_Back_Trace;
Main.Color_Trace_Background = clr_Back_Trace;
SaveAll();
}
}
Вы можете видеть, что line texprew_trace CLR_BACK_TRACE; выполняется (в противном случае вы не увидите желтого).
Я также написал некоторый код, чтобы записать это в реестр, и эта часть также работает нормально, но следующий код (для открытия формы), кажется, не работает:
Код: Выделить всё
public Frm_Cfg_LogLevel() : base(true, false)
{
InitializeComponent();
clr_Back_Trace = Read_Color_From_Registry("Trace_Background");
... // other colours
Txt_Preview_Trace.BackColor = clr_Back_Trace;
... // other controls
this.Refresh();
}
и фактическая форма:
и фактическая форма Скриншот "src =" https://i.sstatic.net/a25ukel8.png "/>
Как вы можете видеть, даже если фона свойства хорошо установлены, цвет фона не желтый.
. Но, насколько я знаю, цвета создаются на основе их значения ARGB, что правильно. Я предполагаю, что это не проблема? Какой путь мне нужно использовать в этом конкретном случае (C# Forms Windows)? Могло ли это иметь это здесь?
Подробнее здесь: https://stackoverflow.com/questions/796 ... my-control
Мобильная версия