VS 2008 のカスタム マークアップ拡張機能を使用して、ローカリゼーション ソリューションを開発しました。
当時は、次のように使用していました。
<TextBlock Text={utilsWpf:Intl Key=ObjectName.PropertyName, DefaultText=Default Name} />
(DefaultText のスペースに注意してください)。(StackOverflow のテキスト色ツールが単語の色を変更する方法にも注意してください)。
しかし、問題なく動作し、問題なくコンパイルされます。
ただし、VS 2010 では、マークアップ拡張機能を実装するこの方法を使用してスペースを入力しようとすると、IDE は常にカンマを追加します。これにより、次のようになります。
<TextBlock Text={utilsWpf:Intl Key=ObjectName.PropertyName, DefaultText=Default, Name} />
もちろん、それはもうコンパイルされません...
それに対する 1 つの解決策は、このマークアップ拡張機能を別の方法で実装することです。
<TextBlock>
<TextBlock.Text>
<utilsWpf:Intl Key="ObjectName.PropertyName", DefaultText="Default Name"/>
</TextBlock.Text>
</TextBlock>
しかし、多くの行が追加され、ご想像のとおり、テキストブロックが 1 つだけではありません...
別の解決策は、スペースを入力するのではなく、別のスペースをコピーして貼り付けることです (これは VS 2010 でもコンパイルできますが、非常に粗雑です)。
私が見ているように、私たちのソリューションはベスト プラクティスではありません。
不便なくスペースを入力できるようにするには、どのようなベスト プラクティスをアドバイスしますか?
あなたの洞察に感謝します。