PDA

View Full Version : Textbox&HTML



mehdi58
شنبه 12 فروردین 1385, 21:46 عصر
سلام
من یه Textbox دارم که دارای خاصیت Multiline می باشد.
به نظر شما چطوری میشه محتویاتی رو که کاربر داخل اون وارد می کنه رو جوری در دیتا بیس ذخیره کرد که هنگام بازیابی و نمایشش هم به همون صورت باشه.
مثلا اگه کاربر داخل Textbox متن زیر رو نوشت :

سلام
حالت چطوره؟

موقع نمایش اون متن در یه Label هم به همون صورت نمایش داده بشه.
البته فکر میکنم که باید محتویات داخل Textbox به همراه کدهای HTML ای در دیتابیس ذخیره بشه اما روشش رو نمی دونم.

manager
شنبه 12 فروردین 1385, 22:55 عصر
خیلی راحته فقط کافیه فاصله را به &nbsp; و n\ یا همون Enter را به <br> تبدیل کنید :





protected void Button1_Click(object sender, EventArgs e)
{
string text = TextBox1.Text;
text=Replace(text,"\n", "<br>");
text=Replace(text, " ", "&nbsp;");
Label1.Text = text;
}




البته من نمی دونم تابع String.Replace مربوط به خود شئی String چه مرگشه:متفکر: که کار نمی کنه به همین خاطر من یه تابع Replace نوشتم که کار تعویض رشته را انجام می ده و کار خاص دیگه ای رو انجام نمی ده..:چشمک:





protected string Replace(string source, string oldValue, string newValue)
{
int startIndex = -1, lastIndex = 0;
string result = "";
startIndex = source.IndexOf(oldValue);
while (startIndex >= 0)
{
result += source.Substring(lastIndex, startIndex - lastIndex);
result += newValue;
lastIndex = startIndex + oldValue.Length;
startIndex = source.IndexOf(oldValue, lastIndex);
}
result += source.Substring(lastIndex);
return result;
}




اگه کسی می دونست تابع String.Replace چه مرگشه به من هم بگه !!!!!!!!!!!!!!!!!!!

manager
شنبه 12 فروردین 1385, 22:57 عصر
اوه ببخشید در مورد ذخیره سازی هم هیچ فرقی نمی کنه که چی ذخیره کنید چون کدهای 32 و 10 , 13 داخل رشته وجود دارند و فقط مهم اینه که برای نمایش از این روش استفاده کنید.

mehdi58
یک شنبه 13 فروردین 1385, 09:40 صبح
به خاطر پاسخ شما متشکرم