2011-08-30 140 views
1

使用3.5,我只是想在我的文本元素換行符:WiX簡單斷線?

<Dialog><Control><Text> 
    &#13;&#10;The [Wizard] will install [ProductName] 
    &#13;&#10;on your computer. 
    &#13;&#10;Click Next to continue or Cancel to exit the [Wizard]. 
</Text></Control>.... 

似乎不是插入新行字符。我怎麼能在那裏得到一個linebreak?

謝謝。

+0

看一看[這太問題] [1]。 (沒有試過我自己。) [1]:http://stackoverflow.com/questions/1780363/how-can-i-insert-a-newline-in-a-localized -value-for-a-string-in-a-wxl-file – uli78

回答

7

不幸的是,Windows Installer在靜態文本控件中不支持換行符。在安裝過程中,文本會根據控件和字體大小自動進行格式化。

但是,如果您確實需要換行符,則只需在下一行使用另一個靜態文本控件即可。

2

official answer from Microsoft關於線在文本控制中斷的內容如下:

用於與指定的行顯示文本的建議的方法打破是使用位於下方彼此多個單行文本控件。控件的文本字段中的字符序列\ n,\ r \ n或\ n \ r不顯示爲換行符。這些字符序列字面上由控件顯示。

2

使用CDATA爲對在this問題絆倒:亞當的回答

<Control><Text> 
<![CDATA[ 
This is my text. 
With a return line 
]]> 
</Text></Control> 
2

樓你也可以格式化你的文本轉換爲WixLocalization條目。 例子:

<WixLocalization xmlns="http://schemas.microsoft.com/wix/2006/localization" Culture="en-US"> 
    <String Id="WelcomeDlgDescription"> 
     This is a custom welcome message. 
     Click Next to continue or 
     Cancel to exit.</String> 
    </WixLocalization> 

而在你的控制使用這樣的:

<Control Id="Description" Type="Text" X="50" Y="20" Width="200" Height="60" Transparent="yes" NoPrefix="yes" Text="!(loc.WelcomeDlgDescription)"/> 
+0

這對CDATA的方法沒有幫助。謝謝。 – DenverJT