|
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
namespace System.Windows.Forms;
/// <summary>
/// The Show method displays a message box that can contain text, buttons, and symbols that inform and instruct the user.
/// This MessageBox will be RTL, if the resources for this dll have been localized to a RTL language.
/// </summary>
internal sealed class RTLAwareMessageBox
{
/// <summary>
/// Displays a message box with specified text, caption, and style.
/// Makes the dialog RTL if the resources for this dll have been localized to a RTL language.
/// </summary>
public static DialogResult Show(
IWin32Window? owner,
string? text,
string? caption,
MessageBoxButtons buttons,
MessageBoxIcon icon,
MessageBoxDefaultButton defaultButton,
MessageBoxOptions options)
{
if (IsRTLResources)
{
options |= (MessageBoxOptions.RightAlign | MessageBoxOptions.RtlReading);
}
return MessageBox.Show(owner, text, caption, buttons, icon, defaultButton, options);
}
/// <summary>
/// Tells whether the current resources for this dll have been localized for a RTL language.
/// </summary>
public static bool IsRTLResources
{
get
{
return SR.RTL != "RTL_False";
}
}
}
|