C DialogResult的用法
DialogResult是C中用于表示对话框操作结果的一个枚举类型,它有两个主要的成员:OK和Cancel,当用户点击对话框中的“确定”按钮时,返回DialogResult.OK;当用户点击“取消”按钮时,返回DialogResult.Cancel,通过使用DialogResult,可以在对话框关闭时获取用户的操作结果,并根据结果执行相应的操作。
下面我们详细介绍一下DialogResult的用法:
1、在Windows窗体应用程序中使用DialogResult
在Windows窗体应用程序中,可以使用DialogResult来表示对话框操作的结果,当用户点击一个按钮时,弹出一个自定义的对话框,该对话框包含两个按钮:确定和取消,我们可以通过设置按钮的DialogResult属性来指定按钮的行为。
using System; using System.Windows.Forms; namespace WindowsFormsApp1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { DialogResult result = MessageBox.Show("确定要删除该项吗?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (result == DialogResult.OK) { // 用户点击了确定按钮,执行删除操作 MessageBox.Show("已删除该项。"); } else if (result == DialogResult.Cancel) { // 用户点击了取消按钮,不执行任何操作 } } } }
2、在Web应用程序中使用DialogResult
在Web应用程序中,也可以使用DialogResult来表示对话框操作的结果,当用户提交表单时,可以弹出一个自定义的对话框,该对话框包含两个按钮:确定和取消,我们可以通过设置按钮的OnClick事件来指定按钮的行为。
using System; using System.Web.UI; using System.Web.UI.WebControls; public partial class ConfirmDeletePage : Page { protected void btnConfirm_Click(object sender, EventArgs e) { DialogResult result = MessageBox.Show("确定要删除该项吗?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (result == DialogResult.OK) { // 用户点击了确定按钮,执行删除操作 Response.Write("已删除该项。"); } else if (result == DialogResult.Cancel) { // 用户点击了取消按钮,不执行任何操作 } } }
3、在WPF应用程序中使用DialogResult
在WPF应用程序中,也可以使用DialogResult来表示对话框操作的结果,当用户点击一个按钮时,弹出一个自定义的对话框,该对话框包含两个按钮:确定和取消,我们可以通过设置按钮的Command属性来指定按钮的行为。
using System;
using System.Windows;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Controls;
using System.Windows.Interactivity;
using System.Windows.Markup;
using Microsoft.Xaml.Behaviors;
using Microsoft.Xaml.Interactivity;
using Microsoft.Xaml.Interactions;
using Microsoft.Xaml.Markup;
using System.ComponentModel;
using System.Runtime.CompilerServices;
using System.Threading; // C 6.0及以上版本需要添加此引用以支持async/await关键字和Task类,如果项目目标是.NET Framework或低于4.5版本,则不需要此引用,但是需要注意的是,即使没有这个引用,你仍然可以编写基于回调的异步代码,只是语法会有所不同,对于那些希望从旧版本升级到新版本的项目,建议直接使用System.Threading库而不是Microsoft.Bcl命名空间下的类,如果你的项目目标是低于4.5版本的框架,那么你可能需要手动引入System.Threading库,否则,编译器会自动为你添加所需的引用,以下是手动引入System.Threading库的方法:在项目中右键单击->添加->引用->在COM选项卡下找到并选择System.Threading并添加到项目中,然后在代码文件顶部添加以下using语句:using System.Threading;
,这样就可以在代码中使用Task类了,然后你就可以使用async/await关键字编写异步代码了。 async Task<int> MyAsyncMethod() => await Task<int>.Run(() => DoWork()); int MyMethod() => DoWork(); static int DoWork() => ThreadPool.QueueUserWorkItem((state) => Console.WriteLine("Hello from threadpool!")); ```
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/261018.html