织梦pc怎么做手机网站,长沙装修公司性价比最高的是哪个,17模板网站,八大营销方式有哪几种系列目录
上一篇#xff1a;白骑士的C#教学实战项目篇 4.1 控制台应用程序 在这一部分#xff0c;我们将从简单的控制台应用程序过渡到图形用户界面#xff08;GUI#xff09;应用程序。GUI 应用程序更加直观和用户友好#xff0c;是现代软件开发的核心内容。我们将介绍如…系列目录
上一篇白骑士的C#教学实战项目篇 4.1 控制台应用程序 在这一部分我们将从简单的控制台应用程序过渡到图形用户界面GUI应用程序。GUI 应用程序更加直观和用户友好是现代软件开发的核心内容。我们将介绍如何使用 Windows Forms 和 Windows Presentation Foundation (WPF) 开发桌面应用程序并通过开发一个记事本应用项目来巩固所学知识。 图形用户界面GUI应用程序使用户可以通过图形元素与应用程序进行交互。这些图形元素包括窗口、按钮、文本框等。在 C# 中主要有两种常见的 GUI 开发框架Windows Forms 和 Windows Presentation Foundation (WPF)。
使用 Windows Forms 开发桌面应用 Windows Forms 是 .NET 框架的一部分用于创建具有图形界面的桌面应用程序。它简单易用适合快速开发小型应用程序。
创建一个简单的 Windows Forms 应用程序
新建项目在 Visual Studio 中选择 “创建新项目”选择 “Windows Forms App (.NET Framework)” 模板。设计界面使用拖放方式添加控件例如按钮和文本框。编写代码 using System;
using System.Windows.Forms;public class MainForm : Form
{private Button button;private TextBox textBox;public MainForm(){button new Button();button.Text Click Me;button.Location new System.Drawing.Point(50, 50);button.Click Button_Click;textBox new TextBox();textBox.Location new System.Drawing.Point(50, 100);textBox.Width 200;Controls.Add(button);Controls.Add(textBox);}private void Button_Click(object sender, EventArgs e){textBox.Text Hello, Windows Forms!;}[STAThread]static void Main(){Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.Run(new MainForm());}
} 在这个示例中创建了一个包含按钮和文本框的简单窗体应用程序。当用户点击按钮时文本框中会显示 “Hello, Windows Forms!”。
使用 WPF 开发现代界面应用 Windows Presentation Foundation (WPF) 是一个用于构建现代桌面应用程序的 UI 框架提供了更丰富的图形和动画支持。
创建一个简单的 WPF 应用程序
新建项目在 Visual Studio 中选择 “创建新项目”选择 “WPF App (.NET Core)” 模板。设计界面在 XAML 文件中定义界面元素 Window x:ClassWpfApp.MainWindowxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlTitleMainWindow Height200 Width300GridButton Namebutton ContentClick Me Width100 Height30 VerticalAlignmentTop Margin100,50,0,0 ClickButton_Click/TextBox NametextBox Width200 Height30 VerticalAlignmentTop Margin50,100,0,0//Grid
/Window 编写代码 using System.Windows;namespace WpfApp
{public partial class MainWindow : Window{public MainWindow(){InitializeComponent();}private void Button_Click(object sender, RoutedEventArgs e){textBox.Text Hello, WPF!;}}
} 在这个示例中创建了一个包含按钮和文本框的简单 WPF 应用程序。当用户点击按钮时文本框中会显示 “Hello, WPF!”。
实践项目开发一个记事本应用 现在我们将综合运用 Windows Forms 和 WPF 技术开发一个简单的记事本应用程序。这个应用程序将包括基本的文本编辑功能如新建、打开、保存和文本编辑。
使用 Windows Forms 开发记事本应用
设计界面在设计视图中添加菜单栏、文本框和相关控件。编写代码 using System;
using System.IO;
using System.Windows.Forms;public class NotepadForm : Form
{private MenuStrip menuStrip;private ToolStripMenuItem fileMenu;private ToolStripMenuItem newMenuItem;private ToolStripMenuItem openMenuItem;private ToolStripMenuItem saveMenuItem;private TextBox textBox;public NotepadForm(){menuStrip new MenuStrip();fileMenu new ToolStripMenuItem(File);newMenuItem new ToolStripMenuItem(New, null, NewFile);openMenuItem new ToolStripMenuItem(Open, null, OpenFile);saveMenuItem new ToolStripMenuItem(Save, null, SaveFile);fileMenu.DropDownItems.Add(newMenuItem);fileMenu.DropDownItems.Add(openMenuItem);fileMenu.DropDownItems.Add(saveMenuItem);menuStrip.Items.Add(fileMenu);textBox new TextBox();textBox.Multiline true;textBox.Dock DockStyle.Fill;Controls.Add(textBox);Controls.Add(menuStrip);MainMenuStrip menuStrip;}private void NewFile(object sender, EventArgs e){textBox.Clear();}private void OpenFile(object sender, EventArgs e){using (OpenFileDialog openFileDialog new OpenFileDialog()){if (openFileDialog.ShowDialog() DialogResult.OK){textBox.Text File.ReadAllText(openFileDialog.FileName);}}}private void SaveFile(object sender, EventArgs e){using (SaveFileDialog saveFileDialog new SaveFileDialog()){if (saveFileDialog.ShowDialog() DialogResult.OK){File.WriteAllText(saveFileDialog.FileName, textBox.Text);}}}[STAThread]static void Main(){Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.Run(new NotepadForm());}
}
使用 WPF 开发记事本应用
设计界面在 XAML 文件中定义界面元素 Window x:ClassNotepadApp.MainWindowxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlTitleNotepad Height450 Width800DockPanelMenu DockPanel.DockTopMenuItem HeaderFileMenuItem HeaderNew ClickNewFile/MenuItem HeaderOpen ClickOpenFile/MenuItem HeaderSave ClickSaveFile//MenuItem/MenuTextBox NametextBox AcceptsReturnTrue AcceptsTabTrue VerticalScrollBarVisibilityAuto HorizontalScrollBarVisibilityAuto//DockPanel
/Window 编写代码 using System;
using System.IO;
using System.Windows;namespace NotepadApp
{public partial class MainWindow : Window{public MainWindow(){InitializeComponent();}private void NewFile(object sender, RoutedEventArgs e){textBox.Clear();}private void OpenFile(object sender, RoutedEventArgs e){Microsoft.Win32.OpenFileDialog openFileDialog new Microsoft.Win32.OpenFileDialog();if (openFileDialog.ShowDialog() true){textBox.Text File.ReadAllText(openFileDialog.FileName);}}private void SaveFile(object sender, RoutedEventArgs e){Microsoft.Win32.SaveFileDialog saveFileDialog new Microsoft.Win32.SaveFileDialog();if (saveFileDialog.ShowDialog() true){File.WriteAllText(saveFileDialog.FileName, textBox.Text);}}}
}
总结 在本节中我们从基本的控制台应用程序逐步过渡到图形用户界面GUI应用程序通过 Windows Forms 和 WPF 这两种不同的框架来开发桌面应用程序。通过开发一个记事本应用项目我们综合运用了所学知识展示了如何设计和实现一个实际的应用程序。继续练习和扩展这些项目可以帮助您进一步提高 C# 编程技能为更复杂的项目打下坚实的基础。
下一篇白骑士的C#教学实战项目篇 4.3 Web开发