右から左のMessageDialogを表示したい。しかし、そのようなオプションは存在しないようです。
このような質問を見ました ( How to center Popup in Metro style app in c# ) が、RTL は別の問題だと思います。
唯一の解決策は、独自の「RTL Popup」を作成することですか? もしそうなら、どのように?
前もって感謝します。
私はこのコードを使用してみました:
しかし、結果はRTLではありません:
右から左のMessageDialogを表示したい。しかし、そのようなオプションは存在しないようです。
このような質問を見ました ( How to center Popup in Metro style app in c# ) が、RTL は別の問題だと思います。
唯一の解決策は、独自の「RTL Popup」を作成することですか? もしそうなら、どのように?
前もって感謝します。
私はこのコードを使用してみました:
しかし、結果はRTLではありません:
C# はわかりませんが、messageDialog.OnPaint
メソッドをオーバーライドできるかもしれません。私はVBでこれを行い、有効にされたときにボタンに異なる色のテキストを表示するようにしました。
Protected Overrides Sub OnPaint(ByVal pevent As System.Windows.Forms.PaintEventArgs)
If MyBase.Enabled Then
If Me.Text = "" Then
MyBase.OnPaint(pevent)
Dim sf As SizeF = pevent.Graphics.MeasureString("Login", Me.Font, Me.Width)
Dim ThePoint As New Point((Me.Width / 2) - (sf.Width / 2), (Me.Height / 2) - (sf.Height / 2))
pevent.Graphics.DrawString("Login", Me.Font, Brushes.Black, ThePoint)
Else
MyBase.OnPaint(pevent)
End If
Else
Me.Text = ""
MyBase.OnPaint(pevent)
Dim sf As SizeF = pevent.Graphics.MeasureString("Not Ready...", Me.Font, Me.Width)
Dim ThePoint As New Point((Me.Width / 2) - (sf.Width / 2), (Me.Height / 2) - (sf.Height / 2))
pevent.Graphics.DrawString("Not Ready...", Me.Font, Brushes.Red, ThePoint)
End If
End Sub
以下の Message Dialog を ur メソッドで使用できます。
var messageDialog = new MessageDialog(" You Can Show Message Here");
messageDialog.Title = "Alert";
// Add commands and set their callbacks; both buttons use the same callback function instead of inline event handlers
messageDialog.Commands.Add(new UICommand(
"OK",
new UICommandInvokedHandler(this.CommandInvokedHandlerAddPics)));
messageDialog.Commands.Add(new UICommand(
"No",
new UICommandInvokedHandler(this.CommandInvokedHandlerback)));
// Set the command that will be invoked by default
messageDialog.DefaultCommandIndex = 0;
// Set the command to be invoked when escape is pressed
messageDialog.CancelCommandIndex = 1;
// Show the message dialog
await messageDialog.ShowAsync();
OK または No ボタンのメソッド
private void CommandInvokedHandlerAddPics(IUICommand command)
{
if (command.Label.Equals("OK"))
{
}
else if (command.Label.Equals("No"))
{
}
}