PDA

View Full Version : سوال: چگونه متن خبر و یا اعلامیه ،را به صورت چند سطری نمایش بدهیم ؟



scarce
یک شنبه 23 مرداد 1390, 23:12 عصر
سلام

من با LinkQ به sql وصل شدم و اطلاعات رو هم به دیتابیس دادم البته به DataSet .

فیلد های جدول :

ID,Title,NewsMess


برای نمایش از DataList استفاده کردم
اطلاعات رو کامل نشون میده اما همه رو پشت سر هم نشون میده یعنی Enter رو حذف می کنه مثلا متن خبر بصورت چند سطری باشه رو به صورت تک سطری نشون میده .

من از TextBox هم استفاده کردم اما یکسری مشکلات داره .

من می خوام بدونم چطوری می تونم متن خبر رو بصورت چند سطری نشون بدم.
در وی بی Label خاصیت AutoSize داره آیا asp.net همچین قابلیتی داره ؟
لطفا راهنمایی کنید

b.paseban
یک شنبه 23 مرداد 1390, 23:56 عصر
من از TextBox هم استفاده کردم اما یکسری مشکلات داره .
از textbox بریا چه کایر استفاده کردین؟ما برای نمایش داده های بانکمون ار label میتونیم استفاد ه کنیم و برای اندازه قرارگیری اون هم از باید از css استفاده کنیم.
اما نحوه صحصیح طراحی به این شکل هست که ما از یه div استفاده می کنیم و داخل اون از یه lable استفاده میکنیم و به اون div استایل مورد نظر رو میدیم.

scarce
سه شنبه 25 مرداد 1390, 14:09 عصر
از textbox بریا چه کایر استفاده کردین؟ما برای نمایش داده های بانکمون ار label میتونیم استفاد ه کنیم و برای اندازه قرارگیری اون هم از باید از css استفاده کنیم.
اما نحوه صحصیح طراحی به این شکل هست که ما از یه div استفاده می کنیم و داخل اون از یه lable استفاده میکنیم و به اون div استایل مورد نظر رو میدیم.

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

من با یک مثال شرح میدم .

فرض کنید متن خبر به صورت زیر هست .

" جوان کشتی گیر ایران مدال طلای جهان را از آن خود کرد
کشتی گیر جوان ایرانی حامد طالبی زرین کمر با کسب مقام نسخت مسابقات جهانی کشتی آزاد افتخار دیگر برای ایران به ارمغان آورد
حامد طالبی زرین کمر ، با کسب مقام قهرمانی آسیا قبل از مسابقات جهانی ...
..."

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

من همین متن رو تو دیتابیس ذخیره کردم ولی زمانی که روی Label نمایش میدم کاراکتر اینتر انگار حذف میشه ، و تمام متن خبر به صورت تک سطری و پشت سرهم نوشته میشه .
برای این مشکل باید چه کاری رو انجام داد ؟

ASPX
سه شنبه 25 مرداد 1390, 18:02 عصر
طبیعی هستش! enter یا n\ باید با تگ <br/> جایگزین بشه


str=str.Replace("\n","<br/>");

scarce
سه شنبه 25 مرداد 1390, 19:44 عصر
طبیعی هستش! enter یا n\ باید با تگ <br/> جایگزین بشه


str=str.Replace("\n","<br/>");

دوست عزیز من

من یک label گذاشتم تو صفحه ، بعد text رو به دیتابیس دادم ، فیلد Mess در جدول News !

الان من چطوری عمل replace رو انجام ، آیا منظور شما اینه :
زمانی که دارم متن خبر رو به دیتا بیس اضافه می کنم عمل جایگزین رو انجام بدم !؟
یا زمانی که می خوام متن رو نمایش بدم ؟ خوب این عمل چگونه انجام میشه ؟

ASPX
چهارشنبه 26 مرداد 1390, 07:48 صبح
مگه نمیگی که از DataList استفاده کردی و داخلش یک لیبیل هست که خصوصیت text اش به فیلدی از جدولت متصله
اون کدی که نوشتم فقط یک الگو بود که راهنماییت کنه!!!

یک تابع به صورت زیر تعریف کن
public string public string ReplaceNtoBr(object o)
{
return o.ToString().Replace("\n", "<br/>");
}

و بعد تو دیتا لیستت اینطور فراخوانی کن!


<asp:Label ID="Label1" runat="server"
Text='<%# ReplaceNtoBr( Eval("Mess")) %>'></asp:Label>