PDA

View Full Version : وردپد



stuxn3t
پنج شنبه 14 خرداد 1394, 15:42 عصر
سلام، من تازه عضو این انجمن شدم
یه سری سوال دارم ممنون میشم کسی کمکم کنه.
تقریبا میشه گفت دارم یه چیزی مثل وردپد طراحی می کنم حالا گزینه های زیر رو نمیدونم باید چه کدی براش بنویسم.

1-redo
2- undo
3- لیست شماره ای و بالت دار
4- url دادن و برداشتن url
5- تورفتگی متن از راست و چپ

RmeXXXXXXXXX
پنج شنبه 14 خرداد 1394, 18:30 عصر
مسلماً کنترلی که باید استفاده کنید RichTextBox هست (و TextBox توی این زمینه بکار نمیاد(برای notepad خوبه)).
این کنترل تمام این امکانات را داره. خاصیت SelectedText هم میتونید تنظیم استایل رو روی متن انتخابی اعمال کنید مثل رنگ زمینه و متن، خاصیت bold, italic، چپ چین راست چین و...
از رخداد SelectedTextChanged هم برای آگاه شدن و مدیریت متن پس از انتخاب شدن

stuxn3t
پنج شنبه 14 خرداد 1394, 19:32 عصر
بله میدونم باید از ریچ تکس باکس استفاده کنم خیلی از گزینه ها مثل تغییر رنگ و جهت و دایرکشن و اینا رو بلدم اما این گزینه ها که گفتمو بلد نیستم اگه امکانش هست کدشو برام بذارین

amirali0079
پنج شنبه 14 خرداد 1394, 20:34 عصر
برای Undo
http://stackoverflow.com/questions/15772602/how-to-undo-and-redo-in-c-sharp-rich-text-box
کدش واضحه یک کالکشن جنریک Stack میسازه تو رویداد Text change هربار تکست رو به این کالکش اضافه میکنی
بعد با کلیک کردن دکمه undo یا ctrl+Z مقدار rich text box رو برابر با stack.pop() میکنی یعنی آخرین مقدار stack که برابر با مقدار فعلی تکست باکس هست رو پاک میکنی و مقدار قبلی رو میزاری

stuxn3t
پنج شنبه 14 خرداد 1394, 21:09 عصر
برای Undo
http://stackoverflow.com/questions/15772602/how-to-undo-and-redo-in-c-sharp-rich-text-box
کدش واضحه یک کالکشن جنریک Stack میسازه تو رویداد Text change هربار تکست رو به این کالکش اضافه میکنی
بعد با کلیک کردن دکمه undo یا ctrl+Z مقدار rich text box رو برابر با stack.pop() میکنی یعنی آخرین مقدار stack که برابر با مقدار فعلی تکست باکس هست رو پاک میکنی و مقدار قبلی رو میزاری

من تازه کارم اگه امکانش هست کدشو برام بذارین من متوجه اون لینکی که گذاشتین نشدم.

Mahmoud Zaad
پنج شنبه 14 خرداد 1394, 21:24 عصر
سلام
richTextBox خودش undo و redo داره، توی یه دکمه برای Undo کد زیر رو بنویسید:
richTextBox1.Undo();
و برای Redo :
richTextBox1.Redo();

در اون لینک هم پاسخی که کنارش علامت تیک هست اون پاسخ پذیرفته شده هست کدهاش هم مشخصه منتها برای textBox هست.

stuxn3t
جمعه 15 خرداد 1394, 10:04 صبح
سلام
richTextBox خودش undo و redo داره، توی یه دکمه برای Undo کد زیر رو بنویسید:
richTextBox1.Undo();
و برای Redo :
richTextBox1.Redo();

در اون لینک هم پاسخی که کنارش علامت تیک هست اون پاسخ پذیرفته شده هست کدهاش هم مشخصه منتها برای textBox هست.

من از این کد استفاده می کنم اما مثلا 2 خط متن مینویسم undo میکنم همه متنو پاک میکنه.من میخوام کاراکتر کاراکتر پاک کنه.

Mahmoud Zaad
جمعه 15 خرداد 1394, 12:25 عصر
اگه کاراکتر به کاراکتر بخواید از این لینک (http://stackoverflow.com/questions/8667302/how-to-get-richtextbox-undo-to-work-better) می تونید کمک بگیرید.

stuxn3t
شنبه 16 خرداد 1394, 20:30 عصر
برای لینک دادن و برداشتن باید چه کار کنم؟

Mahmoud Zaad
شنبه 16 خرداد 1394, 21:55 عصر
ببینید شما خیلی راحت می تونید اینها رو جستجو کنید منم همین کار رو میکنم، البته من مشکلی ندارم برای جواب دادن منتی هم نیست با افتخار هم جواب میدم ولی اگه خودتون جستجو کنید سریعتر هم به جواب می رسید نیازی هم نیست منتظر باشید یه نفر اینجا جواب بده. اگه هم تو انگلیسی مشکل دارید اگه یه فایل ورد باز کنید تمام این امکانات رو داره و عناوین انگلیسیش رو می تونید ببینید.
مثلاً link in richtextbox + C# (https://www.google.com/search?q=link+in+richtextbox+c%23&ie=utf-8&oe=utf-8)