PDA

View Full Version : سوال: حذف قسمتی از متن textBox



shytonak
جمعه 26 مهر 1387, 18:59 عصر
سلام دوستان.میشه یه راهنمایی کنید که چطور قسمتی از متن درون یه textBox رو حذف کرد و یا یه متن خاص رو به قسمتی معیین درون یه تکست باکس وارد کرد.

SMRAH1
جمعه 26 مهر 1387, 19:27 عصر
سلام

برای افزودن یک متن مثلا بعد از کاراکتر دوم می تونی از کدی مثل این استفاده کنی:

textBox1.SelectionStart = 2;
textBox1.Paste("ALI");
وبرای حذف مثلا سه حرف بعد از کاراکتر دوم (حروف سوم،چهارم و پنجم) از کدی مثل این:

textBox1.Select(2, 3);
textBox1.Paste("");

موفق باشی

shytonak
جمعه 26 مهر 1387, 19:55 عصر
مرسي دوست عزيزم.اما اگه تو يه متن خاص كه ما تعداد كراكتر ها رو نميدونيم چي؟مثلا ما ميخواييم كه برنامه بياد هر جا كلمه سعيد رو پيدا كرد شروع كنه به حذف كردن تا كلمه شيطونك.يعني بياد تمام كاركتر هاي بين اين 2 كلمه رو حذف كنه.

SMRAH1
جمعه 26 مهر 1387, 21:10 عصر
در این صورت باید شی string متن رو یعنی همون TextBox1.Text رو به یک شی از کلاس StringBuilder اختصاص بدی و روی اون هر کاری می خواهی بکنه (حذف، اضافه و ...) و در نهایت هم دوباره متن تغییر یافته رو به TextBox1.Text تخصیص بدید.
دلیل اینکه از StringBuilder به جای string باید استفاده کرد،اول اینه که این شی برعکس string خودش رو تغببر می ده نه اینکه یک شی تغییر یافته رو برات ارسال کنه و دوم اینکه سرعت کارش بالاتره.

موفق باشی

shytonak
شنبه 27 مهر 1387, 20:05 عصر
مرسی دوست عزیز.اما میشه با یه کد توضیح بدی تا بهتر متوجه بشم.

SMRAH1
یک شنبه 28 مهر 1387, 07:45 صبح
StringBuilder sb = new StringBuilder();
//sb.Append(TextBox1.Text);
sb.Append("I am Saeed.Are you Saeed?");
sb.Replace("Saeed", "Mohammad");
sb.Remove(11, 2); //Remove 2 characters from index 11
sb.Insert(0, "No "); //Insert string in first character
//TextBox1.Text = sb.ToString();
System.Windows.Forms.MessageBox.Show(sb.ToString() );