C# WPF 事件机制高级计算器程序代码示例
以下是使用C#和WPF编写的一个基于事件机制的带界面的高级计算器程序的示例:
MainWindow.xaml:
<Window x:Class="Calculator.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Calculator" Height="300" Width="400">
<Grid>
<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
<TextBox x:Name="Num1TextBox" Width="150" Margin="0 0 0 10" />
<TextBox x:Name="Num2TextBox" Width="150" Margin="0 0 0 10" />
<Button Content="Add" Width="100" Margin="0 0 0 10" Click="AddButton_Click" />
<Button Content="Subtract" Width="100" Margin="0 0 0 10" Click="SubtractButton_Click" />
<Button Content="Multiply" Width="100" Margin="0 0 0 10" Click="MultiplyButton_Click" />
<Button Content="Divide" Width="100" Click="DivideButton_Click" />
<TextBlock x:Name="ResultTextBlock" Margin="0 20 0 0" FontWeight="Bold" />
</StackPanel>
</Grid>
</Window>
MainWindow.xaml.cs:
using System;
using System.Windows;
namespace Calculator
{
public partial class MainWindow : Window
{
private Calculator calculator;
public MainWindow()
{
InitializeComponent();
calculator = new Calculator();
calculator.CalculationPerformed += Calculator_CalculationPerformed;
}
private void AddButton_Click(object sender, RoutedEventArgs e)
{
double num1 = double.Parse(Num1TextBox.Text);
double num2 = double.Parse(Num2TextBox.Text);
calculator.Add(num1, num2);
}
private void SubtractButton_Click(object sender, RoutedEventArgs e)
{
double num1 = double.Parse(Num1TextBox.Text);
double num2 = double.Parse(Num2TextBox.Text);
calculator.Subtract(num1, num2);
}
private void MultiplyButton_Click(object sender, RoutedEventArgs e)
{
double num1 = double.Parse(Num1TextBox.Text);
double num2 = double.Parse(Num2TextBox.Text);
calculator.Multiply(num1, num2);
}
private void DivideButton_Click(object sender, RoutedEventArgs e)
{
double num1 = double.Parse(Num1TextBox.Text);
double num2 = double.Parse(Num2TextBox.Text);
calculator.Divide(num1, num2);
}
private void Calculator_CalculationPerformed(object sender, CalculatorEventArgs e)
{
ResultTextBlock.Text = 'Result: ' + e.Result;
}
}
}
在这个示例中,我们使用WPF创建了一个简单的界面,包含两个文本框用于输入数字,四个按钮用于执行加法、减法、乘法和除法操作,以及一个文本块用于显示计算结果。
在代码中,我们创建了一个Calculator实例,并订阅了CalculationPerformed事件。每个按钮的点击事件都会调用对应的计算方法,并传递输入的数字。
当计算完成后,CalculationPerformed事件将被触发,并在事件处理程序Calculator_CalculationPerformed中更新界面上的计算结果显示。
你可以根据需要对界面进行修改和美化,以及对计算器的功能进行扩展和改进。
原文地址: http://www.cveoy.top/t/topic/bBDu 著作权归作者所有。请勿转载和采集!