在WPF应用程序中是否需要Main()方法?
在WPF应用程序中是否需要Main()方法?
我对.NET完全陌生,通过运行我在书中遇到的代码来了解C#。
我正在构建一个简单的WPF应用程序,其中包含一个按钮,应该打印出斜边。
我的问题是:在下面的代码示例中,书中有这两个命名空间(Syncfusion和NamespaceDemo)。我是否需要同时包含它们?有什么更好的方法来使用这些代码?其次,当创建一个新的WPF文件和应用程序的按钮时,它会自动生成以下代码:
public MainWindow() { InitializeComponent(); }
我知道MainWindow()是为了包含按钮的设计。它与简单的C#控制台应用程序中的Main()函数有什么不同?
我希望能清楚地解释一下我对如何正确结构化这些不同事物的困惑。我需要一个Main()函数吗?
这是书中的代码:
using static System.Math; namespace Syncfusion { public class Calc { public static double Pythagorean(double a, double b) { double cSquared = Pow(a, 2) + Pow(b, 2); return Sqrt(cSquared); } } } using Syncfusion; using System; using Crypto = System.Security.Cryptography; namespace NamespaceDemo { class Program { static void Main() { double hypotenuse = Calc.Pythagorean(2, 3); Console.WriteLine("Hypotenuse: " + hypotenuse); Crypto.AesManaged aes = new Crypto.AesManaged(); Console.ReadKey(); } } }
这是我的实现,不幸的是不起作用。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using static System.Math; namespace Syncfusion { public class Calc { public static double Pythagorean(double a, double b) { double cSquared = Pow(a, 2) + Pow(b, 3); return Sqrt(cSquared); } } ////// 交互逻辑的MainWindow.xaml /// public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } void Button_Click(object sender, RoutedEventArgs e) { double hypotenuse = Calc.Pythagorean(2, 4); MessageBox.Show("Hypotenuse: " + hypotenuse); } } }