PDA

View Full Version : سوال: Edit Box هوشمند



vb develop
دوشنبه 24 فروردین 1388, 18:59 عصر
سلام دوستان عزیز.
من در یک پروژه ای نیاز دارم تا یک Text Editor هوشمند در اختیار کاربر قرار بدم.
منظورم از هوشمند بودن این هست که من بتونم اون رو مدیریت کنم در واقع تمامی کاراکترهاش برام قابل کنترل باشه، یک چیزی مثل ویرایشگر ویژوال استو دیو.
مثلا بتونم زیر کاراکترهای خاصی خط بکشم، رنگ مقدار خاصی از متن رو تغییر بدم و...

اگر کسی در این زمینه اطلاعاتی داره لطفا ارائه بده.
حتی یک سر نخ هم میتونه خیلی مفید و کار آمد باشه.

seven7777777
سه شنبه 25 فروردین 1388, 08:05 صبح
دوست عزیز سلام
شما با تمام خواصی از richtextbox خود که با کلمه selection شروع میشن می تونید این کار رو انجام بدید . به این صورت :

rtb.SelectionStart = 0;
rtb.SelectionLength = rtb.Text.Length;
rtb.SelectionColor = Color.Blue;
rtb.SelectionFont = new Font("Courier New", 10, FontStyle.Regular);
البته باید به یک نکته توجه داشته باشی اگه شما با این روش قسمتی از متن رو سفارشی کردی و بعد یه متن جدید به richtext اضافه کردی ممکنه این تغییرات در اون هم اعمال بشه ( البته اگر تغییرات تا از یک مکان تا آخرین کاراکتر richtext باشه ) لذا باید بعد از اضافه کردن متن جدید دوباره این عمل رو برای اون انجام بدی تا به حالت مناسب برسی .

zahra111
سه شنبه 25 فروردین 1388, 09:35 صبح
سلام. برای کنترل کردن کاراکترها از رویداد textchanged کنترل RichTextBox استفاده کنید.

NewFoxStudent
سه شنبه 25 فروردین 1388, 10:49 صبح
این لینک رو ببین و توی CodeProject یه سرچی بزن فکر کنم به جواب برسی

http://www.codeproject.com/KB/edit/TextEditorControl.aspx

CYCLOPS
چهارشنبه 26 فروردین 1388, 07:32 صبح
سلام اگه منظورت رو درست متوجه شده باشم اینا کارت رو راه میندازه :متفکر:

1 ) یه کنترل هست به نام Editor.Net یه مقدار حجمش بالاست :ناراحت:
اینم سایت سازندش : (از قسمت دانلود میتونی دانلودش کنی فایل مثال و . . . هم داره)
http://qwhale.net/products/editor/

2 ) یه DLL هم هست که به نام Draco.Controls.CodeEditor.dll که برات این کارو میکنه البته با امکانات کمتر از Editor.Net اگه خواستی از DLL استفاده کنی در مورد پروژه SPGen آقای DelphiAssistant جستجو کن سورسش هم اگه اشتباه نکنم تو CodePlex هست میتونه برات به عنوان یه مثال از نحوه کار باشه .

لینکی هم که NewFoxStudent معرفی کرده به نظر جواب خوبیه (ممنون دوست عزیز)

موفق باشی :لبخند: