C 中TextBox實現換行

2022-07-09 17:24:09 字數 3779 閱讀 8272

簡介摘要:本文將教你如何用c# textbox換行,也許現在你覺得很深奧,但是讀完此篇文章你就會覺得很簡單了。 要讓乙個windows form的textbox顯示多行文字就得把它的multiline屬性設定為true。 這個大家都知道,可是當你要在**中為text屬性設定多行文字的時候可能會遇到點麻煩:) c# textbox換行時你往往會

本文將教你如何用c#

textbox換行[huan hang],也許現在你覺得很深奧,但是讀完此篇文章你就會覺得很簡單了。

要讓乙個windows form的textbox顯示[xian shi]多行文字[wen ben]就得把它的multiline屬性[shu xing]設定[she zhi]為true。

這個大家都知道,可是當你要在**[dai ma]中為text屬性[shu xing]設定[she zhi]多行文字[wen ben]的時候可能會遇到點麻煩:)

c# textbox換行[huan hang]時你往往會想到直接付給乙個含有換行[huan hang]符"\n"的字元[zi fu]串[zi fu chuan]給text屬性[shu xing]:

atextbox.text = "first line\nsecond line\nthird line";  

可是實際執行[yun hang]的時候你卻發現它始終不會換行[huan hang],顯示[xian shi]的結果為"first linesecond linethirdline"。

其實主要是因為c# textbox換行[huan hang]執行[yun hang]在windows上。windows能夠顯示[xian shi]的換行[huan hang]必須由兩個字元[zi fu]組成:carriage return & line feed,也就是必須是"\r\n"。如果只是"\n"在windows中不能顯示[xian shi]為換行[huan hang]的,這與linux/unix等其他的作業系統[xi tong][cao zuo xi tong]不一樣。所以上邊如果把"\n"替換[ti huan]成"\r\n"就可以了。

其實問題[wen ti]仍然沒有很好的解決,因為用"\r\n"能夠滿足windows的要求了,但是如果是其他平台[ping tai]怎麼辦?為了要確保[que bao]讓換行[huan hang]效果在各種平台[ping tai]上都能夠正常的顯示[xian shi],請用environment.newline。它可以確保[que bao]在不同的平台[ping tai]下都能夠返回正確的換行[huan hang]字元[zi fu],在windows下是\r\n,在linux(mono)下就應該是\n了。 所以上面的**[dai ma]應該寫成:

atextbox.text = "first line" + environment.newline + "second line" + environment.newline + "third line";  

另外c# textbox換行[huan hang]你也可以用verbatim string literal

(用@開始的字元[zi fu]串[zi fu chuan])的形式來輸入[shu ru]換行[huan hang]符:

atextbox.text = @"first line second line third line";  

這種形式在**[dai ma]中看起來很直觀,但是如果**[dai ma]編輯器[bian ji qi]是在windows下執行[yun hang]的,仍然相當於輸入[shu ru]了\r\n。environment是乙個靜態類[jing tai lei],位於system命名空間[kong jian]下,提供對當前程式的執行[yun hang]環境和平台[ping tai]的相關資訊[xin xi]的訪問。它提供了很多有用的靜態屬性[shu xing]和方法[fang fa]。怎樣,覺得c# textbox換行[huan hang]是件小事了

簡介摘要:本文將教你如何用c# textbox換行,也許現在你覺得很深奧,但是讀完此篇文章你就會覺得很簡單了。 要讓乙個windows form的textbox顯示多行文字就得把它的multiline屬性設定為true。 這個大家都知道,可是當你要在**中為text屬性設定多行文字的時候可能會遇到點麻煩:) c# textbox換行時你往往會

本文將教你如何用c#

textbox換行[huan hang],也許現在你覺得很深奧,但是讀完此篇文章你就會覺得很簡單了。

要讓乙個windows form的textbox顯示[xian shi]多行文字[wen ben]就得把它的multiline屬性[shu xing]設定[she zhi]為true。

這個大家都知道,可是當你要在**[dai ma]中為text屬性[shu xing]設定[she zhi]多行文字[wen ben]的時候可能會遇到點麻煩:)

c# textbox換行[huan hang]時你往往會想到直接付給乙個含有換行[huan hang]符"\n"的字元[zi fu]串[zi fu chuan]給text屬性[shu xing]:

atextbox.text = "first line\nsecond line\nthird line";  

可是實際執行[yun hang]的時候你卻發現它始終不會換行[huan hang],顯示[xian shi]的結果為"first linesecond linethirdline"。

其實主要是因為c# textbox換行[huan hang]執行[yun hang]在windows上。windows能夠顯示[xian shi]的換行[huan hang]必須由兩個字元[zi fu]組成:carriage return & line feed,也就是必須是"\r\n"。如果只是"\n"在windows中不能顯示[xian shi]為換行[huan hang]的,這與linux/unix等其他的作業系統[xi tong][cao zuo xi tong]不一樣。所以上邊如果把"\n"替換[ti huan]成"\r\n"就可以了。

其實問題[wen ti]仍然沒有很好的解決,因為用"\r\n"能夠滿足windows的要求了,但是如果是其他平台[ping tai]怎麼辦?為了要確保[que bao]讓換行[huan hang]效果在各種平台[ping tai]上都能夠正常的顯示[xian shi],請用environment.newline。它可以確保[que bao]在不同的平台[ping tai]下都能夠返回正確的換行[huan hang]字元[zi fu],在windows下是\r\n,在linux(mono)下就應該是\n了。 所以上面的**[dai ma]應該寫成:

atextbox.text = "first line" + environment.newline + "second line" + environment.newline + "third line";  

另外c# textbox換行[huan hang]你也可以用verbatim string literal

(用@開始的字元[zi fu]串[zi fu chuan])的形式來輸入[shu ru]換行[huan hang]符:

atextbox.text = @"first line second line third line";  

這種形式在**[dai ma]中看起來很直觀,但是如果**[dai ma]編輯器[bian ji qi]是在windows下執行[yun hang]的,仍然相當於輸入[shu ru]了\r\n。environment是乙個靜態類[jing tai lei],位於system命名空間[kong jian]下,提供對當前程式的執行[yun hang]環境和平台[ping tai]的相關資訊[xin xi]的訪問。它提供了很多有用的靜態屬性[shu xing]和方法[fang fa]。怎樣,覺得c# textbox換行[huan hang]是件小事了

C 中TextBox實現換行

要讓乙個windows form的textbox顯示多行文字就得把它的multiline屬性設定為true。這個大家都知道,可是當你要在 中為text屬性設定多行文字的時候可能會遇到點麻煩 你往往會想到直接付給乙個含有換行符 n 的字串給text屬性 c atextbox.text first li...

C 中TextBox實現換行

簡介摘要 本文將教你如何用c textbox換行,也許現在你覺得很深奧,但是讀完此篇文章你就會覺得很簡單了。要讓乙個windows form的textbox顯示多行文字就得把它的multiline屬性設定為true。這個大家都知道,可是當你要在 中為text屬性設定多行文字的時候可能會遇到點麻煩 c...

C 中textbox輸出換行

很多人在c net平台程式設計時遇到乙個問題,就是在textbox中原本應該換行的文字,儲存到檔案中卻沒有換行。例如 textbox中文字為 而儲存到檔案中卻是 沒有了換行。原因在於 textbox中的換行 n是在window上執行的,而window上執行換行的時候需要 r n,所以就導致了無法換行...