私の WPF アプリケーションでは、Unicode 文字 9837 ('♭') を TextBox に入力したいと考えています。(LeftAlt+9837 を使用して) 試してみると、テキスト ボックスに文字 'm' が代わりに表示されます。
TextBox の FontFamily を変更しようとしましたが、何も変わりませんでした。デバッグでは、TextBox は「♭」ではなく「m」という文字を受け取ります。
Microsoft Word で同じ操作 (LeftAlt+9837) を行うと、問題なく動作します。
何か案が?
編集: この文字を Word から TextBox にコピー/貼り付けできます。コピー/貼り付けせずに TextBox にユニコード文字を入力する方法が必要です。Alt+9837 を使用するのが最も簡単な方法だと思いましたが、どうやらうまくいかないようです。
次のコードを使用して、これを非常に簡単に再現できます。
MainWindow.xaml
<Window x:Class="WpfApplication8.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525" Name="Me">
<Grid>
<TextBox Text="{Binding ElementName=Me, Path=MyText, UpdateSourceTrigger=PropertyChanged}" />
</Grid>
</Window>
MainWindow.xaml.cs
public partial class MainWindow
{
public static readonly DependencyProperty MyTextProperty =
DependencyProperty.Register("MyText", typeof(string), typeof(MainWindow));
public string MyText
{
get { return (string)GetValue(MyTextProperty); }
set { SetValue(MyTextProperty, value); }
}
public MainWindow()
{
InitializeComponent();
}
}