1

多言語ツールキットを使用してアプリを翻訳し、疑似言語を使用してテストしています。コード (C#) で翻訳した文字列では問題なく動作しますが、XAML のタグが自動的に翻訳されるようにする方法がわかりません。

http://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh965329.aspxをチュートリアルとして使用していますが、わかりません。Googleでも検索しましたが、まだ運がありません。

たとえば、「透かし」テキスト ボックスを作成しました (これTextBoxは、ユーザーがテキストを入力しておらず、アイテムにフォーカスがない場合に、デフォルトでテキストを表示するものを継承します。XAML は次のようになります (一般的な配置のものを'...'):

<local:WatermarkTextbox x:Name="TitleTextBox" Watermark="MainPage_EnterATitle" ... Style="{StaticResource TextBoxStyle1}" />

ご覧のとおりWatermark、多言語ツールを使用して翻訳されているリソース名の「タグ」で呼び出されるプロパティを設定しています。これを自動翻訳する方法がわかりません。

もう 1 つの例は、下部のアプリ バー ボタンを使用することです。

<Button x:Name="bottomAppBar_unpinFromStartButton" AutomationProperties.Name="MainPage_UnpinFromStart" Style="{StaticResource UnPinAppBarButtonStyle}" Click="bottomAppBar_unpinFromStartButton_Click"/>

上記のリンクを見ると、次のように書かれています。

MediumButton.[using:Windows.UI.Xaml.Automation]AutomationProperties.Name

しかし、これがどこに行くつもりなのか、私にはよくわかりません。

翻訳するのが最も簡単だと思われるボタンを使用しても、機能させることができません。XAML は次のとおりです。

<Button x:Name="RemovePhotoButton" x:Uid="MainPage_RemovePhoto" Content="" HorizontalAlignment="Center" Margin="222,0,974,78" Grid.Row="1" VerticalAlignment="Bottom" Width="170" Height="45"/>

しかし、アプリで実行したり、デザインで表示したりすると、ボタンは空白のままになり、テキストは表示されません。

リソースは次のように設定されます。

ここに画像の説明を入力

そして、翻訳されたドキュメントをうまく埋めています:

ここに画像の説明を入力

XAML を使用せずに、上記のリンクのコードを使用して C# に変換できます。

これを解決するために誰かが私を助けてくれるか、正しい方向に向けてくれるかどうか疑問に思っています.

ありがとう

4

1 に答える 1

1

まず、リソースの名前に欠けていると思うのは、設定したいプロパティです。自分で使用したことはありませんが、次のように理解します。

xaml を次のように変更する必要があります

<local:WatermarkTextbox x:Name="TitleTextBox" x:Uid="MainPage_EnterATitle" Watermark="" ... Style="{StaticResource TextBoxStyle1}" />

また、リソースにはキーを含むエントリが必要です

MainPage_EnterATitle.Watermark

そして、の部分について

MediumButton.[使用:Windows.UI.Xaml.Automation]AutomationProperties.Name

これは、参照されるプロパティが添付プロパティである場合にのみ使用されます。コントロールの一部ではなく、透かしプロパティが添付される場合と同様です。しかし、あなたの場合、それは重要ではありません。

于 2013-01-09T13:26:35.020 に答える