我想用帶有換行符的資源字符串來顯示MessageBox(WinForms)。C# - MessageBox - 消息在資源和行中的本地化中斷
例如而不資源(工程):
string someMsg = "Message. Details:\n" + someDetails;
MessageBox.Show(someMsg);
結果:
消息。詳細信息:
這裏有一些細節
當我移動字符串「消息詳細信息:\ n」到資源:
string someMsg = GlobalStrings.MsgBoxJustTest + someDetails;
MessageBox.Show(someMsg);
結果:
消息。詳細信息:\ n有一些細節
當我將字符串「\ n」移動到資源中時,MessageBox.Show()停止將其解釋爲換行符。
編輯:我在想:someMsg.Replace(@'\ n',Environment.NewLine); 但它對於如此簡單的事情仍然非常惱人。
相關但不重複:http://stackoverflow.com/questions/357804/string-replace-on-escape-characters – Tao 2011-05-20 12:23:11
我不想通過替換方法或編輯來處理代碼。我想將這個資源文件添加到可以很容易翻譯的「普通」用戶。 – binball 2011-05-20 12:34:37
沒錯,但肯定的是,「普通」用戶會發現將正確的換行符放在正確的位置比保留「\ n」佔位符更自然。 (請參閱@Chilaka Umesh對他的回答的評論)。也許問題是:你如何將這些字符串「移動」到資源文件中?這個移動過程是應該用實際換行符替換\ n。 – Tao 2011-05-20 12:37:52