我有一个带有是/否按钮的messageBox。 我希望它的字符串文本从右到左,但按钮位置在左边。我也想改变按钮文字......
我使用了以下代码:
MessageBox.Show("abc", MessageBoxButtons.YesNo, MessageBoxIcon.None,
MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign);
但在此代码中,按钮也位于左侧。我怎样才能在其中设定个人变化?
答案 0 :(得分:3)
您无法编辑此对话框;设计自己的MessageBox
并进行自定义。对于此对话框中的某些有限选项,请参阅MessageBoxOptions枚举中的RightAlign
或RtlReading
选项。
示例:
string message = "سلام";
string caption = "سلام";
MessageBoxButtons buttons = MessageBoxButtons.YesNo;
DialogResult result = MessageBox.Show(this, message, caption, buttons,
MessageBoxIcon.Question, MessageBoxDefaultButton.Button1,
MessageBoxOptions.RightAlign);
答案 1 :(得分:1)
据我所知,你无法更改/编辑winforms的默认MessageBox。但是,您可以创建自定义消息框。看着那(这 Custom Message Box这可能会有所帮助。 您还可以查看之前提出的here
问题答案 2 :(得分:0)
在已提供的选项之外定制MessageBox
非常困难。 RtlReading
选项不是用于化妆品对齐,而是用于在从左到右的环境中启用从右到左的脚本(例如阿拉伯语)。你真正需要的是一些自定义消息框。 CodeProject有几个,所以它们中的一些可能对你有用。网上肯定还有更多。当我转到http://www.codeproject.com/KB/dialog/为.NET添加过滤器并添加对messagebox的搜索时,这就是我得到的:
一篇文章甚至描述了如何扩展系统现有的消息框,但我不推荐这种方法。