نقل قول: ترسیم کادر در #C
سلام ؛
شما باید پست قبلی رو اینجا مینوشتین تا دوستان بتونن ببینن چی شده و چه حرفایی گفته شده !
اگر درست متوجه شده باشم شما فقط به یک GrouBox ساده نیاز دارین !
نقل قول: ترسیم کادر در #C
سلام
فکر می کنم Groupbox تو سون گوشه های رو گرد می کنه اما تو ویندوز 10 ایجوری نیست و گوشه ها رو تیز می کنه، برا همین من تصورم این بود که کنترل دیگری هست
الان دارم تست می کنم
لینک موضوع دوم هم براتون تو خصوصی می فرستم ، اون موضوع متفاوت تر از سوال الانم هست
1 ضمیمه
نقل قول: ترسیم کادر در #C
ضمیمه 153457
این الان Groupbox هس که متفاوت تره از کادری که تو عکس های پست اول دیدیم
من عین همون کادرو میخوام
نقل قول: ترسیم کادر در #C
سلام
در متد OnPaint میتونید هر شکل ظاهری از کنترل مورد نظرتون را تغییر بدید .
برای تغییر ظاهر ، wpf کار کنید (بسته به نوع کارتون ، مدت زمان یادگیری wpf میتونه خیلی کم یا خیلی زیاد باشه . در حد بدست آوردنِ همچین کنترلی ، مدت زمان زیادی برای یادگیری لازم نداره . البته بسته به تمرین و وقتی که خودتون برای یادگیری میذارید ، داره) .
1 ضمیمه
نقل قول: ترسیم کادر در #C
نقل قول:
نوشته شده توسط
SajjadKhati
سلام
در متد OnPaint میتونید هر شکل ظاهری از کنترل مورد نظرتون را تغییر بدید .
برای تغییر ظاهر ، wpf کار کنید (بسته به نوع کارتون ، مدت زمان یادگیری wpf میتونه خیلی کم یا خیلی زیاد باشه . در حد بدست آوردنِ همچین کنترلی ، مدت زمان زیادی برای یادگیری لازم نداره . البته بسته به تمرین و وقتی که خودتون برای یادگیری میذارید ، داره) .
ممنون حلش کردم
اول یک مستطیل ترسیم کردم ، سپس به cornerRadius مستطیل عدد دادم ( این قسمت هم بصورت مستقیم نمی شد )
و در نهایت رسیدم به جایی که باید خط رو بصورت دو بعدی رسم کنم که اون هم باز بصورت مستقیم نمی شد
پس یک خط با فاصله کم و رنگ روشن تر پایین ضلع رسم کردم تا اون حالت دوبعدی هم به چشم بیاد
___
System.Drawing.Graphics graphicsObj;
graphicsObj = this.CreateGraphics();
Pen myPen2 = new Pen(Color.FromArgb(213, 205, 190), 1);
Pen myPen3 = new Pen(Color.FromArgb(250, 250, 250), 2);
Rectangle myRectangle = new Rectangle(20, 21, 420, 54);
Class1.DrawRoundedRectangle(graphicsObj, myPen2, myRectangle, 3);
e.Graphics.DrawLine(myPen3, 23, 23, 438, 23);
ضمیمه 153458
حالا در ادامه برای اینکه بهتر هم بهتر هم بشه یه خط با رنگ تیره به عنوان سایه زیر ضلع پایین بکشم
نقل قول: ترسیم کادر در #C
نقل قول:
نوشته شده توسط
mehran6764
ممنون حلش کردم
اول یک مستطیل ترسیم کردم ، سپس به cornerRadius مستطیل عدد دادم ( این قسمت هم بصورت مستقیم نمی شد )
و در نهایت رسیدم به جایی که باید خط رو بصورت دو بعدی رسم کنم که اون هم باز بصورت مستقیم نمی شد
پس یک خط با فاصله کم و رنگ روشن تر پایین ضلع رسم کردم تا اون حالت دوبعدی هم به چشم بیاد
___
System.Drawing.Graphics graphicsObj;
graphicsObj = this.CreateGraphics();
Pen myPen2 = new Pen(Color.FromArgb(213, 205, 190), 1);
Pen myPen3 = new Pen(Color.FromArgb(250, 250, 250), 2);
Rectangle myRectangle = new Rectangle(20, 21, 420, 54);
Class1.DrawRoundedRectangle(graphicsObj, myPen2, myRectangle, 3);
e.Graphics.DrawLine(myPen3, 23, 23, 438, 23);
ضمیمه 153458
حالا در ادامه برای اینکه بهتر هم بهتر هم بشه یه خط با رنگ تیره به عنوان سایه زیر ضلع پایین بکشم
سلامی مجدد
از متد this.CreateGraphics برای استفاده از شیِ Graphics استفاده نکنید . چون شی جدید از Graphics ایجاد میکنه .
از پارامترِ وروی در همون متد OnPaint (که از نوع PaintEventArgs هست) ، برای استفاده از شی Graphics استفاده کنید (همون پروپرتیِ e.Graphics) .
نقل قول: ترسیم کادر در #C
نقل قول:
نوشته شده توسط
SajjadKhati
سلامی مجدد
از متد this.CreateGraphics برای استفاده از شیِ Graphics استفاده نکنید . چون شی جدید از Graphics ایجاد میکنه .
از پارامترِ وروی در همون متد OnPaint (که از نوع PaintEventArgs هست) ، برای استفاده از شی Graphics استفاده کنید (همون پروپرتیِ e.Graphics) .
متاسفانه همچنان سایت دکمه تشکر رو نداره
خواستم به بهانه تشکر سوالی هم ازتون بپرسم .
چند بار پیشنهاد دادین WPF یاد بگیرم ، اگر ممکنه چند تا منبع خوب برای شروع معرفی کنید .
پ ن : این روش ترسیم مستطیل هم وقتی تعداد کادرها زیاد باشه خیلی آزار دهنده میشه
نقل قول: ترسیم کادر در #C
نقل قول:
نوشته شده توسط
mehran6764
متاسفانه همچنان سایت دکمه تشکر رو نداره
خواستم به بهانه تشکر سوالی هم ازتون بپرسم .
چند بار پیشنهاد دادین WPF یاد بگیرم ، اگر ممکنه چند تا منبع خوب برای شروع معرفی کنید .
پ ن : این روش ترسیم مستطیل هم وقتی تعداد کادرها زیاد باشه خیلی آزار دهنده میشه
سلامی مجدد
خواهش میکنم .
من هم اول مثل شما که winform کار میکردم ، نیاز به یه سری کنترل ها و شخصی سازی هایی در کنترل ها داشتم .
در یک نمونه اش ، به یه کنترلی که پشت زمینه اش شفاف باشه ، نیاز داشتم . گفتم این رو در winform طراحی کنم و چند ماه روش زمان گذاشتم و با کمک استادم (The King) ، اون کنترل را طراحی کردم اما همونطور که استادم از اول بهم گوشزد کرده بود ، اما کارایی اش مناسب نبود که این قضیه به خودِ winform و اینکه winform از اساس با کنترل های شفاف ، مشکلات سازگاری داره ، برمیگرده .
بعد گفتم با کاهشِ کاراییِ این کنترل ، یه جوری کنار میام . رفتم سراغ کنترل های دیگه ، گاها دیدم برای کوچیک ترین تغییری در یه کنترل ، دنیایی باید مکافات و اینها بکشم . چه برسه به چندین کنترل و مخصوصا کنترل های پیچیده تر مثل combobox و tree و اینها .
این بود که گفتم چند ماهی که وقت صرف اینها کردم ، روی یادگیری wpf وقت میذاشتم ، بهتر بود .
در کل نظرم اینه که اگه میخواین ظاهر کنترل را تغییر بدین ، ارزش داره که زمان صرف یادگیری wpf کنید . چون برای شخصی سازیِ ظاهر کنترل ها در winform ، علاوه بر مشکلات بالا ، ممکنه کمپوننت های شرکت های دیگه هم به سختی گیرتون بیاد یا داستان های کرک شون پیش بیاد و تازه اونها هم محدودیت در شخصی سازی کنترل ها دارن.
==========================
اما برای یادگیری wpf ، بستگی به خودتون داره که در چه حد بهش احتیاج دارین و آیا میخواین از تمام امکاناتش استفاده کنین یا نه؟
شما یه وقت میاد میگین که میخوام wpf را در این حد یاد بگیرم که همچین کنترلی که در پست اول نشون دادین را توی wpf بسازم اما چیزهای دیگه و قابلیت های بیشترِ دیگه اش را نیاز ندارم . یعنی از بقیه ی قابلیت هاش ، نمیخوام استفاده کنم . اگه این طور باشه ، خوب قطعا خیلی خیلی مدت زمان یادگیری ، کمتر میشه .
منابع ، که در سایت مایکروسافت هست :
https://docs.microsoft.com/en-us/dot...erve-view=true
سایت c-sharpcorner.com هم در مقالاتی ، خیلی کمک میکنه . سایت های دیگه هم هستن .
اما برای wpf ، علاوه بر XML ، مباحث زیر را در حدِ حداقلی هم که شده باید یاد بگیرید:
XAML in WPF
سیستم پروپرتی WPF
Data binding
اینی که میخواین ظاهرِ یک کنترل را تغییر بدین ، باید مبحث Control Template در WPF را یاد بگیرید .
سیستم رویداد هم در WPF اندکی فرق داره که بهتره یاد بگیرین . همچنین مبحث Resource ها را .
البته مباحث در WPF ، زیادن . ولی اینها ، مباحث اولیه برای یادگیری WPF هست .
منابع فارسی هم اگه خواستین هم که میتونین پیدا کنین .
همچنین این تاپیک ، پرسش های من و پاسخ های استادم (The King) درباره ی WPF هست که از حالتِ مبتدی (تا به حال) مطرح شد و احتمالا به دردتون میخوره (از همینجا ، مجددا از استادم تشکر میکنم) .