2012-06-29 3 views
-1
using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 
      string name = textBox1.Text; 

      if (textBox1.Text.Contains("l")) 
      { 
       textBox1.Text.Replace("l", "s"); 
      } 
      string nameA = textBox1.Text; 
      MessageBox.Show(nameA); 
     } 
    } 
} 

기본적으로 원하는 것은 사용자 유형에 이름을 지정하고 이름에 "l"문자가 " 에스". 그리고 버튼을 누를 때 결과가 메시지 상자에 표시되게하십시오. 그러나, 내가 시도한 것에 상관없이, "l"은 결코 바뀌지 않는다.Windows Form 응용 프로그램에서 문자열의 특정 문자를 변경하려고 시도했습니다. C#

편집 : 고마워요, 그게 바보 같았어요. 와우 V_V

답변

4
textBox1.Text = textBox1.Text.Replace("l", "s"); 
0
if (name.Contains("l")) 
{ 
    name = name.Replace("l", "s"); 
    textBox1.Text = name; 
} 

MessageBox.Show(name); 
2

문자열이 불변이기 때문에 당신은 대체 수행 한 후 텍스트를 다시 할당 할 수 있습니다.

또한 당신은 textBox1.Text = textBox1.Text.Replace("l", "s");을 사용하고 교체 원본 텍스트를 반환합니다 stringReplace에서 발견되지 않는 경우 때문에, Contains 검사를 피할 수 있습니다.

+0

감사합니다. 감사합니다. –

+0

+1 불변 – Habib

관련 문제