C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 82 を表示中)
■48363 / )  (WPF)LavelやTextBlockでの文字化け
□投稿者/ Subaru (1回)-(2010/04/03(Sat) 18:58:04)

分類:[.NET 全般] 

2010/04/03(Sat) 19:14:07 編集(投稿者)
こんばんは、Subaruと申します。

現在起きている問題について、より良い対応方法を皆様に
ご教授して頂きたく、書き込みさせて頂きました。

起きている問題:
 WindowsXP SP3においてWPFのLabel、TextBlockで文字化けが起きる。
 (1バイト、2バイト文字関係無く「□」で表示されます。)

開発環境:
  Windows7 Professional
  Visual Studio 2008 Standard
 .NET Framework 3.5
  C#

現在分かっていること:
 原因は分かりませんが、LabelやTextBlockの代わりに
 Glyphsを使用すると文字化けが起きないことは確認しております。

対応方法:
 すべてのLabelやTextBlockをGlyphs(もしくはGlyphsをラップしたコントロール)に置き換える。
 しかし、今後の開発でLabelやTextBlockを使用できないのは不便に感じます。

皆様は、どのように対応を行いますでしょうか。
ご教授頂ければ幸いです。


--------------------- 実験を行ったソース ------------------------------
<Window x:Class="WordTest.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="文字化け確認" Height="300" Width="300">
    <Grid>
		<Grid.ColumnDefinitions>
			<ColumnDefinition Width="100"></ColumnDefinition>
			<ColumnDefinition Width="*"></ColumnDefinition>
		</Grid.ColumnDefinitions>
		
		<Grid.RowDefinitions>
			<RowDefinition></RowDefinition>
			<RowDefinition></RowDefinition>
			<RowDefinition></RowDefinition>
		</Grid.RowDefinitions>
		
		<Label Grid.Column="0" Grid.Row="0" FontSize="20">No.1</Label>
		<Glyphs Grid.Column="1" Grid.Row="0" Fill="Black" FontUri="meiryo.ttc" UnicodeString="犬です" FontRenderingEmSize="20"></Glyphs>
		
		<Label Grid.Column="0" Grid.Row="1" FontSize="20">No.2</Label>
		<Label Grid.Column="1" Grid.Row="1" FontSize="20">猫です</Label>
		
		<Label Grid.Column="0" Grid.Row="2" FontSize="20">No.3</Label>
		<TextBlock Grid.Column="1" Grid.Row="2" FontSize="20">鳥です</TextBlock>
	</Grid>
</Window>

返信 編集キー/


管理者用

- Child Tree -