syncfusion-wpf-calculator

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Implementing WPF Calculator (SfCalculator)

实现WPF计算器(SfCalculator)

When to Use This Skill

何时使用本技能

Use this skill when you need to:
  • Add calculator functionality to WPF desktop applications
  • Perform mathematical operations in your application
  • Implement memory operations (store, restore, add, subtract, clear)
  • Set up and configure the SfCalculator control with proper assemblies
  • Display calculated values and manage input/output
  • Implement features like watermark text and default values
当你需要以下功能时,可使用本技能:
  • 为WPF桌面应用添加计算器功能
  • 在应用中执行数学运算
  • 实现内存运算(存储、恢复、累加、累减、清除)
  • 配置并设置带有正确程序集的SfCalculator控件
  • 显示计算结果并管理输入/输出
  • 实现水印文本和默认值等功能

Component Overview

组件概述

The SfCalculator is a Syncfusion WPF control that allows users to perform mathematical operations like in a standard calculator. It supports:
  • Basic arithmetic operations
  • Memory storage and retrieval (MS, MR, M+, M-, MC)
  • Read-only Value property for calculated results
  • Memory property for stored values
  • Customizable display text and default values
  • Theme support through SfSkinManager
SfCalculator是Syncfusion提供的WPF控件,允许用户像使用标准计算器一样执行数学运算。它支持:
  • 基本算术运算
  • 内存存储与检索(MS、MR、M+、M-、MC)
  • 用于获取计算结果的只读Value属性
  • 用于存储数值的Memory属性
  • 可自定义的显示文本和默认值
  • 通过SfSkinManager实现主题支持

Documentation and Navigation Guide

文档与导航指南

Getting Started

入门指南

📄 Read: references/getting-started.md
  • Assembly dependencies (Syncfusion.SfInput.WPF, Syncfusion.Shared.WPF)
  • Creating a new WPF project
  • Adding SfCalculator via Visual Studio Designer
  • Adding SfCalculator via XAML markup
  • Adding SfCalculator programmatically in C#
  • Basic configuration
📄 阅读: references/getting-started.md
  • 程序集依赖(Syncfusion.SfInput.WPF、Syncfusion.Shared.WPF)
  • 创建新的WPF项目
  • 通过Visual Studio设计器添加SfCalculator
  • 通过XAML标记添加SfCalculator
  • 在C#中以编程方式添加SfCalculator
  • 基本配置

Properties and Values

属性与数值

📄 Read: references/properties-and-values.md
  • Value property (read-only calculated result)
  • DefaultValue property (initial display value)
  • DisplayText property (watermark/placeholder text)
  • Setting and retrieving values
  • Data binding patterns
📄 阅读: references/properties-and-values.md
  • Value属性(只读的计算结果)
  • DefaultValue属性(初始显示值)
  • DisplayText属性(水印/占位符文本)
  • 数值的设置与获取
  • 数据绑定模式

Memory Operations

内存运算

📄 Read: references/memory-operations.md
  • Memory property overview (read-only)
  • MS button (Memory Store)
  • MR button (Memory Restore)
  • M+ button (Memory Add)
  • M- button (Memory Subtract)
  • MC button (Memory Clear)
  • Practical memory operation examples
📄 阅读: references/memory-operations.md
  • Memory属性概述(只读)
  • MS按钮(内存存储)
  • MR按钮(内存恢复)
  • M+按钮(内存累加)
  • M-按钮(内存累减)
  • MC按钮(内存清除)
  • 内存运算的实用示例

Quick Start Example

快速开始示例

Basic XAML Implementation:
xaml
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:syncfusion="http://schemas.syncfusion.com/wpf">
    <Grid>
        <syncfusion:SfCalculator x:Name="Calculator" 
                                 Width="200" 
                                 Height="300" />
    </Grid>
</Window>
Programmatic C# Implementation:
csharp
using Syncfusion.Windows.Controls.Input;

SfCalculator calculator = new SfCalculator();
calculator.DefaultValue = 0;
calculator.DisplayText = "Enter value";
this.Content = calculator;
基础XAML实现:
xaml
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:syncfusion="http://schemas.syncfusion.com/wpf">
    <Grid>
        <syncfusion:SfCalculator x:Name="Calculator" 
                                 Width="200" 
                                 Height="300" />
    </Grid>
</Window>
C#编程实现:
csharp
using Syncfusion.Windows.Controls.Input;

SfCalculator calculator = new SfCalculator();
calculator.DefaultValue = 0;
calculator.DisplayText = "Enter value";
this.Content = calculator;

Key Properties

关键属性

PropertyTypeDescription
Valuedecimal (read-only)Current calculated value from the last expression
Memorydecimal (read-only)Value currently stored in memory
DefaultValuedecimalInitial value displayed when calculator starts
DisplayTextstringWatermark/placeholder text shown in the value display
属性类型描述
Valuedecimal(只读)最后一次表达式的当前计算结果
Memorydecimal(只读)当前存储在内存中的数值
DefaultValuedecimal计算器启动时显示的初始值
DisplayTextstring数值显示区域的水印/占位符文本

Common Use Cases

常见使用场景

  1. Building Tools Applications - Embed calculator for quick calculations
  2. Financial Applications - Add memory operations for repeated calculations
  3. Data Entry Forms - Quick calculation reference without switching windows
  4. Educational Applications - Teach mathematical operations
  5. Dashboard Utilities - Add calculation capabilities to admin panels
  1. 构建工具类应用 - 嵌入计算器以实现快速运算
  2. 金融类应用 - 添加内存运算以支持重复计算
  3. 数据录入表单 - 无需切换窗口即可快速参考计算结果
  4. 教育类应用 - 教授数学运算
  5. 仪表板工具 - 为管理面板添加计算功能

Common Patterns

常见模式

Pattern 1: Display with Watermark
csharp
calculator.DisplayText = "Enter calculation";
calculator.DefaultValue = 0;
Pattern 2: Access Calculated Values
csharp
decimal result = calculator.Value; // Get calculated value
decimal stored = calculator.Memory; // Get memory value
Pattern 3: Memory Operations Workflow
User clicks MS → Value stored to Memory
User clicks MR → Memory value retrieved
User clicks M+ → Add current value to memory
User clicks M- → Subtract current value from memory
User clicks MC → Clear memory
模式1:带水印的显示
csharp
calculator.DisplayText = "Enter calculation";
calculator.DefaultValue = 0;
模式2:获取计算结果
csharp
decimal result = calculator.Value; // 获取计算结果
decimal stored = calculator.Memory; // 获取内存中的数值
模式3:内存运算流程
用户点击MS → 数值存储到Memory
用户点击MR → 恢复Memory中的数值
用户点击M+ → 将当前数值累加到内存
用户点击M- → 从内存中减去当前数值
用户点击MC → 清除内存