private void btnPickHotkeys_Click(object sender, EventArgs e) { unsafe { HotKeyDataHolder hkdh; ThemeDataHolder tdh; HotKeyPickerForm hkpf = new HotKeyPickerForm(&hkdh, &tdh, HotKeys); HelperFunc.CreateFormStartPosition(ref hkpf, this); DialogResult result = hkpf.ShowDialog(); if (result == DialogResult.OK) { string themePathFromCSTR1 = new string(tdh.ThemePath1); string themePathFromCSTR2 = new string(tdh.ThemePath2); //After the form is closed we can make a new KeyValuePair for our dictionary and register the key. RegisterHotKey(Handle, hkdh.id, hkdh.keyModifier, hkdh.keyHashCode); HotKeys.Add( HotKey.FormNewHotKey(hkdh), new ThemePathContainer(themePathFromCSTR1, themePathFromCSTR2) ); } } logStatus(); }