在C#的运用程序中 MessageBox.Show("")的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在C#的运用程序中 MessageBox.Show("")的问题相关的知识,希望对你有一定的参考价值。

请问在 MessageBox.Show("这里面显示的字 任何让他换行?");任何让里面的字体居中?

C#不支持居中功能的.可以有2个变通的做法:
1 自己编写一个控件(也就是一个窗体),窗体上放置图标和label,其中label的文本对齐方式属性TextAlign设置为MiddleCenter,AutoSize设置为False,再把该Label的长宽拖拉到合适大小。

2 仍然使用MessageBox, 计算待显示的文本的长度,然后在前后添加若干数量的空格。

//MessageBox每行最多显示的字符数量.试验确定
Int32 MaxLineLen = XX;
//待显示的字符串内容
String msginfo = "......";

//空格数量
Int32 spacecount = 0;

//多个空格组成的字符串
String spacestr = String.Empty;

if(msginfo.Length < MaxLineLen)

//在文本的头和尾都添加此数量的空格
spacecount = (MaxLineLen - msginfo.Length) / 2;
msginfo = msginfo.PadLeft(spacecount, ' ');
msginfo = msginfo.PadRight(spacecount, ' ');

else

//计算最后一行的字符数
Int32 leftcnt = msginfo.Length % MaxLineLen;
//计算最后一行的空格数
spacecount = (MaxLineLen - leftcnt) / 2;
//创建多个空格的字符串
spacestr = spacestr.PadLeft(spacecount, ' ');
//把空字符串插入到最后一行的前面
msginfo = msginfo.Insert(msginfo.Length - leftcnt - 1, spacestr);
//把空字符串插入到文本末尾
msginfo = msginfo + spacestr;


MessageBox.Show(msginfo, "Title");
参考技术A 居中好像悬,换行就是直接加上"\n"就行
如:
MessageBox.Show("啦啦啦啦啦" + "\n" + "啦啦啦啦啦");
参考技术B 没试过

以上是关于在C#的运用程序中 MessageBox.Show("")的问题的主要内容,如果未能解决你的问题,请参考以下文章

在VS环境中进行C#应用程序设计时,为什么那个MessageBox.Show出不来呢?

ASP.NET Jquery C# MessageBox.Show 对话框呃...问题

c#中messagebox.show如何实现显示信息换行!求大虾们 速回 急用!!

C#中的MessageBox.show的一个用法

c#中Message.Show()方法中的参数怎么设置,分别是啥意思?

C#问题,MessageBox.Show()怎么输出已赋值的参数,具体如下: