نمایش نتایج 1 تا 9 از 9

نام تاپیک: رفتن به خط بعد در TextBox و نمایش صحیح آن بعد از ثبت در بانک

  1. #1

    رفتن به خط بعد در TextBox و نمایش صحیح آن بعد از ثبت در بانک

    سلام
    چطوری میشه تنظیمی توی TextBox انجام داد، که وقتی کاربر اینتر میزنه، موقع ثبت توی بانک هم، اینترش ثبت بشه و نمایش اطلاعات، دقیقا شبیه مطلب ثبت شده ی کاربر باشه؟

    من توی برنامه م وقتی کاربرها مطلب می نویسن و بینش با اینتر میرن خط بعد، موقع نمایشش، همه چیز پشت سر هم دیده میشه

    ممنون میشم راهنمایی کنین

  2. #2
    کاربر دائمی آواتار majnun
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    ایران
    سن
    35
    پست
    656

    نقل قول: رفتن به خط بعد در TextBox و نمایش صحیح آن بعد از ثبت در بانک

    2 راه دارید شما
    یا اینکه کلا از ادیتور استفاده کنید

    یا اینکه بیاید در رویداد تکست چنج تکست باکس بررسی کنید اگه اینتر زده شد خودتون کد thml اینتر رو به انتهای متن چک باکس اضافه کنید

    به همین راحتی

  3. #3

    نقل قول: رفتن به خط بعد در TextBox و نمایش صحیح آن بعد از ثبت در بانک

    سلام , میتونید از این متد کمکی استفاده کنید , هنگام بازیابی از از متد httpUtility.htmlDecode استفاده کنید .

           /// <summary>
    /// Converts the input plain-text to HTML version, replacing carriage returns
    /// and spaces with <br /> and &nbsp;
    /// </summary>
    public static string ConvertToHtml(string content)
    {
    content = HttpUtility.HtmlEncode(content);
    if (content != null)
    content = content.Replace(" ", "&nbsp;&nbsp;").Replace(
    "\t", "&nbsp;&nbsp;&nbsp;").Replace("\n", "<br>");
    return content;
    }


    موفق باشید

  4. #4

    نقل قول: رفتن به خط بعد در TextBox و نمایش صحیح آن بعد از ثبت در بانک

    از این دستور هم می تونید استفاده کنید

    TextBox1.Text.Replace("/n/r", "</br>");

  5. #5

    نقل قول: رفتن به خط بعد در TextBox و نمایش صحیح آن بعد از ثبت در بانک

    ممنونم از راهنماییهاتون

    من از هر دو روش استفاده کردم
    اما چون برای نمایش متن این تکست باکس، از گرید تمپلیت استفاده میکنم و به این شکل نمایش میدم:

    <asp:LabelID="Label2"runat="server"Text='<%#Eval("ChatContent")%>'
    CssClass="fontgetdatachat"></asp:Label>



    اصلا کدها کار نمی کنن
    یعنی حتی توی بانک هم نشون نمیده که با کد Html ثبت شده

    برای این شیوه باید چکار کنم؟

  6. #6

    نقل قول: رفتن به خط بعد در TextBox و نمایش صحیح آن بعد از ثبت در بانک

    شما به جای کنترل label از textbox استفاده کنید و حتما باید TextMode ="MultiLine" را بنویسید مشکلتون حل میشه

                  <asp:TextBox ID="TextBox2" TextMode ="MultiLine"   runat="server" Text='<%#Eval("ChatContent") %>'></asp:TextBox>

  7. #7

    نقل قول: رفتن به خط بعد در TextBox و نمایش صحیح آن بعد از ثبت در بانک

    نقل قول نوشته شده توسط hamhik مشاهده تاپیک
    شما به جای کنترل label از textbox استفاده کنید و حتما باید TextMode ="MultiLine" را بنویسید مشکلتون حل میشه

                  <asp:TextBox ID="TextBox2" TextMode ="MultiLine"   runat="server" Text='<%#Eval("ChatContent") %>'></asp:TextBox>
    یعنی روش دیگه ای نداره؟
    توی گرید نمایش اطلاعات که نمیشه از textbox استفاده کرد

  8. #8

    نقل قول: رفتن به خط بعد در TextBox و نمایش صحیح آن بعد از ثبت در بانک

    نقل قول نوشته شده توسط rana-writes مشاهده تاپیک
    ممنونم از راهنماییهاتون

    من از هر دو روش استفاده کردم
    اما چون برای نمایش متن این تکست باکس، از گرید تمپلیت استفاده میکنم و به این شکل نمایش میدم:

    <asp:LabelID="Label2"runat="server"Text='<%#Eval("ChatContent")%>'
    CssClass="fontgetdatachat"></asp:Label>

    اصلا کدها کار نمی کنن
    یعنی حتی توی بانک هم نشون نمیده که با کد Html ثبت شده

    برای این شیوه باید چکار کنم؟
    در صورتی که تونستید به روشی که گفتم متن رو به صورت صحیح در دیتابیس ذخیره کنید میتونید از این متد کمکی استفاده کنید :

            /// <summary>
    /// كار متد HttpUtility.HtmlDecode را انجام ميدهد
    /// </summary>
    /// <param name="rawText">آبجكتي كه ميخواهيد ديكد شدود</param>
    /// <returns>رشته</returns>
    public static string decodeText(Object rawText)
    {
    string txtObject = Convert.ToString(rawText);
    if (!string.IsNullOrEmpty(txtObject))
    return HttpUtility.HtmlDecode(txtObject);
    return null;
    }


    همچنین از اونجایی که شما از Binding استفاده میکنید , باید به روشی زیر این متد را فراخوانی کنید ( فرض کنید متد بالا در کلاس TextUtil قرار گرفته باشد )

    <asp:LabelID="Label2"runat="server" Text='<%#TextUtil.decodeText(Eval("ChatContent"))%  >'
    CssClass="fontgetdatachat"></asp:Label>



    اینها همه در شرایطی هست که شما تونسته باشید , متن رو به صورت صحیح در دیتابیس درج کرده باشید .
    من توصیه میکنم برای درج از کنترل های داده ای مثل Gridview یا DetailsView استفاده نکنید .


    موفق باشید

  9. #9

    نقل قول: رفتن به خط بعد در TextBox و نمایش صحیح آن بعد از ثبت در بانک

    ممنونم آقای دیندار از راهنماییتون
    من برای درج از گرید استفاده نمی کنم، یه تکست باکسه که توش متن می نویسم و نمایشش توی گریده

    کدهایی که زحمت نوشتنش رو کشیدین امتحان میکنم :)

    سپاس بسیار

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •