分带取消按钮和不带取消按钮的

调用方法:

frmMessageBox frm = new frmMessageBox("提示", "数据连接失败,请重试!", 0);
frm.ShowDialog();
frm.Dispose();
GC.Collect();
frmMessageBox frm = new frmMessageBox("删除用户", "确定删除用户?", 1);
frm.ShowDialog();
frm.Dispose();//模式窗体不会自动调用资源清理,需手动清理,否则会内存溢出
GC.Collect();
if (frm.DialogResult != DialogResult.OK) return;
//执行的操作

自定义:

public partial class frmMessageBox : Form
{
private bool normalmoving = false;
private Point oldMousePosition; /// <summary>
/// type=0/1:0表示无取消按钮;1表示有确定和取消按钮
/// </summary>
/// <param name="type"></param>
public frmMessageBox(int type)
{
InitializeComponent();
InitButton(type);
} private void InitButton(int type)
{ if (type == 0)
{
this.btnOK.Location = new System.Drawing.Point(195, 160);
this.button2.Visible = false;
}
} public frmMessageBox(string Title, string Message, int type):this(type)
{
this.Message = Message;
this.Title = Title;
}
/// <summary>
/// Message
/// </summary>
public string Message
{
set
{
this.lblMessage.Text = value;
}
}
/// <summary>
/// Title
/// </summary>
public string Title
{
set
{
this.lblTitle.Text = value; }
} /// <summary>
/// 确定事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnOK_Click(object sender, EventArgs e)
{
//1.返回一个值,给调用者
this.DialogResult = DialogResult.OK;
//2.关闭
this.Close();
}
/// <summary>
/// 取消事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void picCancle_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.Cancel;
this.Close();
} private void frmMessageBox_Load(object sender, EventArgs e)
{ }
#region 标题栏的相关事件
private void pnlTitle_MouseDown(object sender, MouseEventArgs e)
{
if (this.WindowState == FormWindowState.Maximized)
{
return;
}
//Titlepanel.Cursor = Cursors.NoMove2D;
oldMousePosition = e.Location;
//moving = true;
normalmoving = true;
} private void pnlTitle_MouseMove(object sender, MouseEventArgs e)
{
//如果leftlag为true则进行移动
if (!normalmoving) return;
if (e.Button == MouseButtons.Left && normalmoving)
{
Point newposition = new Point(e.Location.X - oldMousePosition.X, e.Location.Y - oldMousePosition.Y);
this.Location += new Size(newposition);
//if (MousePosition.Y <= 0)
//{
// this.WindowState = FormWindowState.Maximized;
// maxmoving = false;
//}
}
} private void pnlTitle_MouseUp(object sender, MouseEventArgs e)
{
if (normalmoving)
{
normalmoving = false;
}
}
#endregion
}

c# 自定义控件-提示框(弹框)的更多相关文章

  1. 遮罩、警告框/弹框 - EasyUI

    1.遮罩 1.1. $.messager.progress //开启遮罩 $.messager.progress({}); 或 $.messager.progress({ title: 'Please ...

  2. tomcat在debug模式启动直接提示:弹框无法启动,无报错信息;但直接启动的话,就会有报错信息

    今天运行项目,Debug模式启动Tomcat,直接弹框:无法启动(翻译,因为后来整理,所以都忘记当时的截图) 后来尝试直接start,发现不弹框了,但是console有报出错信息. 类似以下错误 20 ...

  3. bootstrap模态框弹框后执行Ajax

    如下: editModal:模态框ID <script> $(document).ready(function() { $('#editModal').on('hidden.bs.moda ...

  4. 弹框中的elment-form在弹框重新打开后,怎么初始化验证信息

    如果弹框关闭前有错误提示,弹框重新打开,由于没重新刷新页面,该错误还是存在.... 解决办法:弹框中的内容写成一个组件,prop接收父元素弹框的状态,并监听且reset表格 1. cnpm insta ...

  5. UI自动化之特殊处理二(弹框\下拉框\选项\文件上传)

    弹框\下拉框\选项\文件上传也是一些比较特殊的操作 目录 1.弹框 2.下拉框 3.选项 4.文件上传 1.弹框 弹框有三种形式,value为alert.confirm.prompt三种的弹框,第一个 ...

  6. showPrompt弹框提示

    工作中会有很多的弹框,用来添加模板,用来信息提示,,我现在用的模板有dialog(用来添加数据模板内容),还有一个就是自写的showPrompt用来判断错误或者正确的信息~~ 样子大概就是这样的,, ...

  7. JS 信息提示弹框封装

    // 功能提示弹框 function tipsBox ( option ) { var html = ''; if ( option.type == 'success' ) { html += '&l ...

  8. CreateProcessAsUser,C#写的windows服务弹框提示消息或者启动子进程

    服务(Service)对于大家来说一定不会陌生,它是Windows 操作系统重要的组成部分.我们可以把服务想像成一种特殊的应用程序,它随系统的“开启-关闭”而“开始-停止”其工作内容,在这期间无需任何 ...

  9. Dynamics CRM2016 关闭错误报告弹框提示

    在之前的版本中错误报告的弹框提示是可以在隐私首选项中设置关闭的,如下图所示 但是在2016中这个设置没了 有人说在右上角的选项中设置,但那个只能是设置个人的无法修改系统级别的.在系统中找了半天还是没有 ...

随机推荐

  1. Java应用程序OOM分析

    内存泄露:申请使用完的内存没有释放,导致虚拟机不能再次使用该内存,此时这段内存就泄露了,因为申请者不用了,而又不能被虚拟机分配给别人用. 内存溢出:申请的内存超出了JVM能提供的内存大小,此时称之为溢 ...

  2. python网络爬虫-解析网页(六)

    解析网页 主要使用到3种方法提取网页中的数据,分别是正则表达式.beautifulsoup和lxml. 使用正则表达式解析网页 正则表达式是对字符串操作的逻辑公式 .代替任意字符 . *匹配前0个或多 ...

  3. oracle 快速创建用户

    create user  testdb identified by 123456; grant  dba to testdb;

  4. Spring源码-IOC部分-自定义IOC容器及Bean解析注册【4】

    实验环境:spring-framework-5.0.2.jdk8.gradle4.3.1 Spring源码-IOC部分-容器简介[1] Spring源码-IOC部分-容器初始化过程[2] Spring ...

  5. 「SHOI2006」有色图

    首先发现这题虽然是边的置换,但是是由点的置换所造成的,并且发现点置换对应的所有边置换和置换操作构成置换群. 由于颜色可以全选,那么根据 Polya 定理,答案为: \[|X / G| = \frac{ ...

  6. unicode家族

    定义 如果把各种文字编码形容为各地的方言,那么Unicode就是世界各国合作开发的一种语言. Unicode 只是一个符号集,它只规定了符号的二进制代码,却没有规定这个二进制代码应该如何存储. UTF ...

  7. SpringBoot使用IDEA设置的外部Tomcat启动

    前言 使用springboot内嵌的tomcat启动是没问题,但是工程是要放到服务器上的tomcat的,所以springboot内嵌的能够启动,但不代表服务器的tomcat能启动起来,我就遇到了这个问 ...

  8. Core Animation的使用步骤

  9. 对JSP中的Session 简单理解

    我的理解: 简单来说,要使用服务器端的session对象,就是要有其对应的key,即sessionid,它只认识sessionid. 下面我说的cookie,url重写或者隐藏表单,都是为了将其对应的 ...

  10. LaunchScreen&LaunchImage

    优先级:LaunchScreen > LaunchImage 在xcode配置了,不起作用 1.清空xcode缓存 2.直接删掉程序 重新运行 如果是通过LaunchImage设置启动界面,那么 ...