我的教授分配了一个C#尖锐项目,我们必须将坐标从极坐标转换为矩形,反之亦然。我对C#的了解很少(我的教授从字面上告诉我们除了如何安装它之外,没有其他方面的知识),而且我在多行代码上始终遇到此错误。
“'Polar_Checked'没有重载匹配委托'RoutedEventHandler'(第20行)
“'Converter_Click'没有重载匹配委托'RoutedEventHandler'(第22行)
“'TextBox_TextChanged'的重载不匹配委托'TextChangedEventHandler'(第23行)
“'Angle_TextChanged'的重载不匹配委托'TextChangedEventHandler'(第24行)
public delegate int TextChangedEventHandler();
public MainWindow(RoutedEventArgs e)
{
InitializeComponent();
}
private void Polar_Checked(object sender, TextChangedEventHandler e)
{
}
private void TextBox_TextChanged(object sender, TextChangedEventHandler e)
{
}
public void TextBox_TextChanged_1(object sender, TextChangedEventHandler e)
{
double mag;
Console.WriteLine("Enter a number: ");
mag = Convert.ToInt32(Console.ReadLine());
}
public void Angle_TextChanged(object sender, TextChangedEventHandler e)
{
double ang;
Console.WriteLine("Enter a number: ");
ang = Convert.ToInt32(Console.ReadLine());
}
private void Converter_Click(object sender, TextChangedEventHandler e, double ang, double mag)
{
if (Polar.IsChecked == true)
{
double x;
double y;
x = (Math.Cos(ang) * mag);
y = Math.Sin(ang) * mag;
Console.Write(x);
Console.Write(y);
}
else if (Rectangular.IsChecked == true)
{
MessageBox.Show("Goodbye.");
}
}
}
}
答案 0 :(得分:1)
对于某些将RoutedEventArgs
作为第二个参数的事件,您的WPF表单似乎期望RoutedEventHandler。这显然与代码中的(object sender, TextChangedEventHandler e)
不匹配。
要使代表匹配以下内容:
public delegate void RoutedEventHandler(object sender, RoutedEventArgs e);
您应该使用
private void Polar_Checked(object sender, RoutedEventArgs e)
{
}
对其他事件也应如此-在MSDN中搜索类型和错误代码...