社区
C#
帖子详情
如何重写MessageBox.Show()的方法
张家可
2009-05-31 09:37:11
在winform里,自定义一个类库,
请问如何重写MessageBox.Show()的方法
我是用C#写
...全文
1791
15
打赏
收藏
如何重写MessageBox.Show()的方法
在winform里,自定义一个类库, 请问如何重写MessageBox.Show()的方法 我是用C#写
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
H460562952
2011-02-23
打赏
举报
回复
用Windows API
lzc2125
2009-06-02
打赏
举报
回复
[Quote=引用 5 楼 xxyping 的回复:]
其实也无所谓重写不重写 ,如果楼主只是想简单的省略
MessageBoxButtons,MessageBoxIcon 这些东西,你可以自己写个方法么,
例如:
private void ShowMessage(string caption,string text)
{
MessageBox.Show(text, caption,
MessageBoxButtons.OKCancel, MessageBoxIcon.Question,
MessageBoxDefaultButton.Button1);
}
这样就好,如果你想随时的…
[/Quote]
这个很好,平时我也是这样使用
张家可
2009-06-02
打赏
举报
回复
[Quote=引用 8 楼 zhy2003119 的回复:]
//别忘记引用
using System.Windows.Forms;
//封装好的方法
public static void WinSowMessageBox(string caption,string text)
{
MessageBox.Show(text, caption,
MessageBoxButtons.OKCancel, MessageBoxIcon.Question,
MessageBoxDefaultButton.Button1);
}
没有必要重写,自己在公共类里封装 这样一个静态方法即可。
[/Quote]
我就是在自己定义的一个类库里这样写,
但是提示我MessageBox.Show(...)
没有此方法
老鼠爱上猫
2009-06-01
打赏
举报
回复
//别忘记引用
using System.Windows.Forms;
//封装好的方法
public static void WinSowMessageBox(string caption,string text)
{
MessageBox.Show(text, caption,
MessageBoxButtons.OKCancel, MessageBoxIcon.Question,
MessageBoxDefaultButton.Button1);
}
没有必要重写,自己在公共类里封装 这样一个静态方法即可。
New_SunShine
2009-06-01
打赏
举报
回复
写一个方法传递参数就可以了,没有必要重写。
SQL77
2009-06-01
打赏
举报
回复
只有这样的吧MessageBox.Show
xxyping
2009-06-01
打赏
举报
回复
其实也无所谓重写不重写 ,如果楼主只是想简单的省略
MessageBoxButtons,MessageBoxIcon 这些东西,你可以自己写个方法么,
例如:
private void ShowMessage(string caption,string text)
{
MessageBox.Show(text, caption,
MessageBoxButtons.OKCancel, MessageBoxIcon.Question,
MessageBoxDefaultButton.Button1);
}
这样就好,如果你想随时的改变你的MessageBoxButtons,或者MessageBoxIcon等等,可以重载这个方法
如果还要返回值的的话也可一重载,就这样,我感觉要比重写什么MessageBox.Show要好的多。。
只是个人建议
CGabriel
2009-06-01
打赏
举报
回复
[Quote=引用 2 楼 llxlett 的回复:]
public class WinMessageBox
{
public WinMessageBox()
{
}
public static void ShowMessagebox(string Context, string Title)
{
MessageBoxs.Show(Context, Title, MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
}
}
我想重写成类似这样的,
这样就不用每次调用弹出窗体的时候都要写那个
MessageBoxButtons,MessageBoxIcon…
[/Quote]
首先, 你的 MessageBoxs.Show 多了一个 's'
其次, 建议不用建一个类, 直接写一个静态的方法就可以了
最后, 建议你不要漏掉 IWin32Window owner 参数, 否则 MessageBox 会变成一个无主的东西,会被其他窗体遮盖
CqCoder
2009-06-01
打赏
举报
回复
关注 友情帮顶··
Harvey_He
2009-06-01
打赏
举报
回复
用Windows API
s32702
2009-06-01
打赏
举报
回复
自己封一下就可以了。
ly19850703
2009-06-01
打赏
举报
回复
[Quote=引用 5 楼 xxyping 的回复:]
其实也无所谓重写不重写 ,如果楼主只是想简单的省略
MessageBoxButtons,MessageBoxIcon 这些东西,你可以自己写个方法么,
例如:
private void ShowMessage(string caption,string text)
{
MessageBox.Show(text, caption,
MessageBoxButtons.OKCancel, MessageBoxIcon.Question,
MessageBoxDefaultButton.Button1);
}
这样就好,如果你想随时的改变你的MessageBoxButtons,或者MessageBoxIcon等等,可以重载这个方法…
[/Quote]
同意
w5dy
2009-06-01
打赏
举报
回复
1.引用using System.Windows.Forms;
写个类,传递参数就行.
2.或者自己制作一个类似MessageBox的控件.
张家可
2009-05-31
打赏
举报
回复
public class WinMessageBox
{
public WinMessageBox()
{
}
public static void ShowMessagebox(string Context, string Title)
{
MessageBoxs.Show(Context, Title, MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
}
}
我想重写成类似这样的,
这样就不用每次调用弹出窗体的时候都要写那个
MessageBoxButtons,MessageBoxIcon
只管传进来内容和标题 就好。。。
但我在类库里这样写会提示我
错误 MessageBox”并不包含“Show”的定义
我引入
using System.Windows.Forms;了
还是不行,编译不过
CGabriel
2009-05-31
打赏
举报
回复
你想重写成怎么样先?
messagebox
文本居中C语言,
MessageBox
.Show 居中
C# codeusing System.Runtime.InteropServices;public delegate IntPtr HookProc(int nCode, IntPtr wParam, IntPtr lParam);[DllImport("user32.dll")]public static extern IntPtr SetWindowsHookEx(int hookid,Ho...
wpf
重写
messagebox
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/lc352778616/article/details/79076724WPF利用window实现自定义
MessageBox
,并实现自定义点击事件效果图 项目结构 //类似工厂模式显示不同风格的
MessageBox
class...
Winform
MessageBox
.Show时居中到主页面
重新定义一个类,集成
MessageBox
.Show
方法
到该类中,并加入一些处理代码,好将弹框展示到指定的控件中间。最近winform项目不需要使用全屏显示了,还四分屏,半屏,各种骚操作要上线,被迫学习!在原
MessageBox
.Show函数的基础上,前面加上控件对象即可。想展示在图片控件中间[pictureBox_Handson]的中间。比如我想展示在本窗体[this]的中间。其余一些重载函数的用法就不一一列举了。
C# WinForm中简易自定义
MessageBox
的实现
方法
当我们在WinForm应用程序中使用标准的
MessageBox
时,我们经常遇到功能上的限制。标准
MessageBox
提供了一个非常基础的对话框,其中包含一个或多个按钮,以及一个可选的图标,用于显示消息、警告或错误信息。然而,它并不提供更复杂的交互功能,例如收集用户输入、提供下拉菜单选择或在消息框内展示更丰富的信息内容。在实际应用中,我们可能需要收集用户的额外信息,或者根据用户的响应执行更复杂的操作。标准
MessageBox
并不支持这些场景,这就突显出开发自定义
MessageBox
的必要性。
WinForm实现将
MessageBox
显示在窗体中间
一、实现效果 二、实现思路 2.1、
重写
一个Message类实现让Message弹窗居中 /*** * Title:"三维可视化" 项目 * 主题:【视图层】将
MessageBox
显示控制 * Description: * 功能: * 1、将
MessageBox
.Show显示在窗体中间 * Date:2020 * Version:1.2版本 * Author:Coffee * Modify Recoder: */ using System; using System.Window
C#
111,129
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章