私はwinformアプリケーションを使っています。そして、richbox_textchangeでは、入力されたテキストが英語かどうかを検出したいと思います。英語の場合、LeftToRight typing else RightToLeft typingを実行します。英語以外の形式を検出する
私は、そのコードを使用:
private void richTextBox1_TextChanged(object sender, EventArgs e)
{
if (CultureInfo.CurrentCulture.TextInfo.IsRightToLeft)
{
label1.Text = "RTL";
}
else
{
label1.Text = "LTR";
}
}
をしかし、私はいつも得る:LTRは、LABEL1は、私はアラビア入力した場合でも、RTLにテキストを変更することはありません!
EDIT:ANSWERED !!
まずここで、特にオデッド私を助けるために皆のおかげで、ここで私はあなたがあなたのクラスの先頭に正しい名前空間を追加する必要が
private void richTextBox1_TextChanged(object sender, EventArgs e)
{
if (InputLanguage.CurrentInputLanguage.Culture.TextInfo.IsRightToLeft)
{
label1.Text = "RTL";
}
else
{
label1.Text = "LTR";
}
}
Xenophobia;を使用していますが、すべての米国版でデフォルトで有効にする必要があります。 ;-) –
アラビア語はRTL言語です。 – Oded
@Oded、申し訳ありませんが、私はRTLとLTRの間に間違って配置されていましたが、RTLではなく常にLTRを取得します –