0%

csharp key press event tutorial and app.config

Guide

MainForm

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
//System.Console.WriteLine("ProcessCmdKey " + cur_image_id);

//capture up arrow key
if (keyData == Keys.Left)
{
//this.button_prev.PerformClick();
button_prev_click();

return true;
}
else if (keyData == Keys.Right)
{
//System.Console.WriteLine("Enter "+cur_image_id);

//this.button_ok.PerformClick();
button_ok_click();

return true;
}

return base.ProcessCmdKey(ref msg, keyData); // trigger 2 button_ok_click
}

TextBox

1
2
3
4
5
6
7
8
private void textBox_index_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
//enter key is down
button_goto_click();
}
}

app.config

app.config.xml

1
2
3
4
5
6
7
8
9
10
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<appSettings>
<add key="image_extension" value="png" />
<add key="output_filepath" value="./output.json" />
</appSettings>
</configuration>

usage

reference System.Configuration.dll

1
2
3
4
5
6
7
8
using System.Configuration;

private void init_config()
{
var appSettings = System.Configuration.ConfigurationManager.AppSettings;
string image_ext = "*."+ appSettings["image_extension"];
string output_filepath = appSettings["output_filepath"];
}

Reference

History

  • 20190919: created.