2011-01-25 67 views
2

使用自定義標記擴展空間時,關鍵的問題,我們在VS 2008WPF:在VS2010

使用自定義標記擴展在當時開發的本地化解決方案,我們用這種方式:

<TextBlock Text={utilsWpf:Intl Key=ObjectName.PropertyName, DefaultText=Default Name} /> 

(注意DefaultText中的空格)。 (還要注意StackOverflow的文本顏色工具如何更改單詞的顏色)。

但它工作正常,編譯沒有問題。

2010年VS不過,只要你嘗試鍵入使用實現標記擴展的這樣一個空間時,IDE總是添加了一個逗號,這給:

<TextBlock Text={utilsWpf:Intl Key=ObjectName.PropertyName, DefaultText=Default, Name} /> 

當然,這不是」牛逼編譯了...

一個解決方案是其他的方式來實現此標記擴展:

<TextBlock> 
    <TextBlock.Text> 
     <utilsWpf:Intl Key="ObjectName.PropertyName", DefaultText="Default Name"/> 
    </TextBlock.Text> 
</TextBlock> 

但它增添了不少線路,我們不只有一個TEX tblock你可以想象...

另一種解決方案是不鍵入空格,但複製另一個空間並粘貼(它仍然編譯在VS 2010中,但是很粗糙)。

正如我所看到的,我們的解決方案並不是最佳實踐。

你會建議什麼樣的最佳做法能夠在沒有不便的情況下打字?

感謝您的見解。

回答

0

嘗試使用單引號:

<TextBlock Text="{utilsWpf:Intl Key=ObjectName.PropertyName, DefaultText='Default Name'}" /> 
+0

謝謝!我不知道我們可以在XAML中使用簡單的引號。 – 2011-01-26 13:40:22