下面的代码试图初始化对话框中的复选框,方法是根据从中检索的保存值将它们设置为选中或未选中Settings.GetOption()
。但是,此代码运行后复选框仍未初始化,我认为这是因为在引用它时checkbox.Key
它是对象的副本而不是引用。如何将其作为参考,以便代码正常工作?
Dictionary<CheckBox, string> checkboxes = new Dictionary<CheckBox, string>() {
{ CheckEnableHotkeys, "EnableHotkeys" },
{ CheckMinimizePlayback, "MinimizeOnPlayback" },
{ CheckMinimizeRecording, "MinimizeOnRecord" },
{ CheckLoopPlayback, "LoopPlayback" },
{ CheckJitterMode, "JitterMode" }
};
foreach (KeyValuePair<CheckBox, string> checkbox in checkboxes)
checkbox.Key.Checked = Settings.GetOption(checkbox.Value) == 1;
*编辑:问题是即使在代码运行后复选框仍然未选中,我不完全确定为什么。*