private void TextBoxAvgSet_TextChanged(object sender, EventArgs e)
{
Setter<int>(sender as TextBox, new IntPtrVoid(camera.Average),
new VoidPtrInt(camera.Average), "Average", cameraControlGUI.LabelAvgShow);
}
private void Setter<InType>(TextBox sender, Delegate output, Delegate input, string str, Label shower)
{
string text = sender.Text;
if (text.Contains("\r\n"))
{
sender.Text = text = text.Replace("\r\n", "");
var converter = TypeDescriptor.GetConverter(typeof(InType));
try
{
var value = (InType)converter.ConvertFromString(text);
input.DynamicInvoke(value);
if (!EqualityComparer<InType>.Default.Equals(value, (InType)output.DynamicInvoke()))
{
cameraControlGUI.LabelErrorCodeShow.Text = "無法設定" + str + ",將設定改回預設值";
sender.Text = Convert.ToString(output.DynamicInvoke());
}
shower.Text = Convert.ToString(output.DynamicInvoke());
}
catch (NotSupportedException exception)
{
cameraControlGUI.LabelErrorCodeShow.Text = exception.ToString();
}
catch (Exception exception)
{
cameraControlGUI.LabelErrorCodeShow.Text = exception.ToString();
}
}
}
ICAgICAgICBwcml2YXRlIHZvaWQgVGV4dEJveEF2Z1NldF9UZXh0Q2hhbmdlZChvYmplY3Qgc2VuZGVyLCBFdmVudEFyZ3MgZSkKICAgICAgICB7CiAgICAgICAgICAgIFNldHRlcjxpbnQ+KHNlbmRlciBhcyBUZXh0Qm94LCBuZXcgSW50UHRyVm9pZChjYW1lcmEuQXZlcmFnZSksCiAgICAgICAgICAgICAgICBuZXcgVm9pZFB0ckludChjYW1lcmEuQXZlcmFnZSksICJBdmVyYWdlIiwgY2FtZXJhQ29udHJvbEdVSS5MYWJlbEF2Z1Nob3cpOwogICAgICAgIH0KCiAgICAgICAgcHJpdmF0ZSB2b2lkIFNldHRlcjxJblR5cGU+KFRleHRCb3ggc2VuZGVyLCBEZWxlZ2F0ZSBvdXRwdXQsIERlbGVnYXRlIGlucHV0LCBzdHJpbmcgc3RyLCBMYWJlbCBzaG93ZXIpCiAgICAgICAgewogICAgICAgICAgICBzdHJpbmcgdGV4dCA9IHNlbmRlci5UZXh0OwoKICAgICAgICAgICAgaWYgKHRleHQuQ29udGFpbnMoIlxyXG4iKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgc2VuZGVyLlRleHQgPSB0ZXh0ID0gdGV4dC5SZXBsYWNlKCJcclxuIiwgIiIpOwogICAgICAgICAgICAgICAgdmFyIGNvbnZlcnRlciA9IFR5cGVEZXNjcmlwdG9yLkdldENvbnZlcnRlcih0eXBlb2YoSW5UeXBlKSk7CiAgICAgICAgICAgICAgICB0cnkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdmFsdWUgPSAoSW5UeXBlKWNvbnZlcnRlci5Db252ZXJ0RnJvbVN0cmluZyh0ZXh0KTsKICAgICAgICAgICAgICAgICAgICBpbnB1dC5EeW5hbWljSW52b2tlKHZhbHVlKTsKICAgICAgICAgICAgICAgICAgICBpZiAoIUVxdWFsaXR5Q29tcGFyZXI8SW5UeXBlPi5EZWZhdWx0LkVxdWFscyh2YWx1ZSwgKEluVHlwZSlvdXRwdXQuRHluYW1pY0ludm9rZSgpKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNhbWVyYUNvbnRyb2xHVUkuTGFiZWxFcnJvckNvZGVTaG93LlRleHQgPSAi54Sh5rOV6Kit5a6aIiArIHN0ciArICLvvIzlsIfoqK3lrprmlLnlm57poJDoqK3lgLwiOwogICAgICAgICAgICAgICAgICAgICAgICBzZW5kZXIuVGV4dCA9IENvbnZlcnQuVG9TdHJpbmcob3V0cHV0LkR5bmFtaWNJbnZva2UoKSk7CiAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgc2hvd2VyLlRleHQgPSBDb252ZXJ0LlRvU3RyaW5nKG91dHB1dC5EeW5hbWljSW52b2tlKCkpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2F0Y2ggKE5vdFN1cHBvcnRlZEV4Y2VwdGlvbiBleGNlcHRpb24pCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY2FtZXJhQ29udHJvbEdVSS5MYWJlbEVycm9yQ29kZVNob3cuVGV4dCA9IGV4Y2VwdGlvbi5Ub1N0cmluZygpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2F0Y2ggKEV4Y2VwdGlvbiBleGNlcHRpb24pCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY2FtZXJhQ29udHJvbEdVSS5MYWJlbEVycm9yQ29kZVNob3cuVGV4dCA9IGV4Y2VwdGlvbi5Ub1N0cmluZygpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQ==
prog.cs(1,16): error CS1525: Unexpected symbol `void', expecting `class', `delegate', `enum', `interface', `partial', or `struct'
Compilation failed: 1 error(s), 0 warnings