PDA

View Full Version : آموزش: سورس 3تا DataGridViewColumn و یک DataGridViewFooter اختصاصی (دانلود کنید)



gilsoft
یک شنبه 26 بهمن 1393, 23:29 عصر
سلام دوستان

3تا DataGridViewColumn به نامهای:

1. DgvLabelColumn ... جهت ایجاد ستونهای نمایشی و بدون فوکوس ( مانند کنترل Label رفتار می‌کنه )

2. DgvRowNumColumn ... جهت ایجاد ستون شماره ردیف یا همون RowNumber که بصورت اتوماتیک عمل می‌کند ( مانند کنترل Label رفتار می‌کنه )

3. DgvNumericColumn ... جهت ایجاد ستون عددی ( مانند TextBox رفتار می‌کند و فقط عدد می‌پذیره و سه رقم سه رقم هم جدا می‌کنه )


یه DgvFooter هم نوشتم و تو پروژه اضافه کردم و فکر می‌کنم ایده خوبی برای بعضی از دوستان باشه

مطمئنم که این کلاس‌ها کم و کسرهایی داره .. بنابراین منتظر نظرات سازنده‌ی شما عزیزان هستم .....



128514
موفق باشید .....

swallow.pa
دوشنبه 27 بهمن 1393, 15:01 عصر
ممنون جناب آقاي محرابي :تشویق::تشویق::تشویق:
خب اگه اشكال نداره سوالي دارم
اول چون اين ديتاگريد رو شما ساختين لطفا توضيحاتي رو بدين:
1- متدها و پروپرتيهاي سفارشي در اين ديتاگريد چيست؟
2-چطور ميشه تو ديتاگريد يك باتن گذاشت مثل همون صدور سند حسابداري؟
3- نكته اي هست كه توضيح بديد تا من روش كار كنم؟
4-فرم 2 به پروژه اضافه كردم خب چطور ديتاگريد رو اضافه كنم.؟
منتظريم دوست عزيز

gilsoft
پنج شنبه 30 بهمن 1393, 08:16 صبح
منتظريم دوست عزيز

سلام

متاسفانه اینترنت خونه قطع شده .. یکی دو روز طول میکشه

من حتما اون قسمت ShowListCode رو براتون میزارم .....

موفق باشید .....

gilsoft
شنبه 02 اسفند 1393, 22:10 عصر
ممنون جناب آقاي محرابي :تشویق::تشویق::تشویق:
خب اگه اشكال نداره سوالي دارم
اول چون اين ديتاگريد رو شما ساختين لطفا توضيحاتي رو بدين:
1- متدها و پروپرتيهاي سفارشي در اين ديتاگريد چيست؟
2-چطور ميشه تو ديتاگريد يك باتن گذاشت مثل همون صدور سند حسابداري؟
3- نكته اي هست كه توضيح بديد تا من روش كار كنم؟
4-فرم 2 به پروژه اضافه كردم خب چطور ديتاگريد رو اضافه كنم.؟
منتظريم دوست عزيز

سلام دوست عزیز

فایل ضمیمه پست 1# Update شد ...

لطفا پروژه را Build کرده و آن را Trace کنید ... سعی شده که به سئوالات شما پاسخ داده شود ...

باز هم اگه مشکلی هست بفرمائید .. من در خدمتم ...

موفق باشید ....

swallow.pa
جمعه 08 اسفند 1393, 19:25 عصر
جناب مهرابي سلام
سورسها رو بررسي كردم به نتايج زير رسيد
اين سورسها دو تا كنترل اصلي دارند
اول : cDgvColumns.vb كه داراي چهار تا كلاس مهم هستند
الف : DgvLabelColumn براي ساخت عناوين ستون ديتاگريد بكار مي روند
ب: DgvRowNumColumn براي ساخت يك رديف در ديتاگريد بكار مي روند
ج : DgvNumericColumn براي ساخت يك ستون عددي بكار مي رود
د: DgvProgressColumn براي ستون تخفيفاته ولي مطمين نيستم

دوم : DgvNBox.vb ظاهرا تكست باكسه و احتمالا اين تكست باكس توي ديتاگريد استفاده ميشه ولي مطمئن نيستم

لطفا اگه موارد بالا رو اشتباه گفتم تصحيح بفرماييد
كدهاي شما براي بنده سنگينه اما مطالعه اش مي كنم و منتظر جواب شما هستم كه سوالات بيشتري بپرسم

بعد از اينكه اين موارد رو سوال كردم چند نكته مبهم برام مونده
-- با اعداد اعشار براي اين ديتاگريد بايد چكار كرد>
-- چطور داده هاي توي ديتاگريد در هنگام ذخيره با ديتابيس كنترل بشه بعد اطلاعات ذخيره شود -- نحوه كنترل اطلاعات ديتاگريد در قسمت شرح با ديتايس رو موندم يا مثلا نرخ خالي نباشه و ...

ممنونم

gilsoft
جمعه 08 اسفند 1393, 22:57 عصر
سلام مجدد



د: DgvProgressColumn براي ستون تخفيفاته ولي مطمين نيستم


هانطور که از اسمش پیداست .. این یه ستون برای نمایش ProgressBar هستش و معمولا توی گریدهای ورودی استفاده نمیشه ... ( فقط تو گریدهای نوع گزارشی کاربرد داره )



-- با اعداد اعشار براي اين ديتاگريد بايد چكار كرد>


هنوز رو اعداد اعشار کار نکردم ( ولی کار نشد نداره )



-- چطور داده هاي توي ديتاگريد در هنگام ذخيره با ديتابيس كنترل بشه بعد اطلاعات ذخيره شود -- نحوه كنترل اطلاعات ديتاگريد در قسمت شرح با ديتايس رو موندم يا مثلا نرخ خالي نباشه و ...


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



كدهاي شما براي بنده سنگينه


حقیقتا برای من هم سنگینه .. چون از اینترنت برداشتم و دستکاری‌شون کردم و هنوز هم ایراداتی دارند ( مثلا تو ستون DgvNumericColumn با کلیدهای «جهت» نمیتونی به سطر قبل/بعد بری ...)



دوم : DgvNBox.vb ظاهرا تكست باكسه و احتمالا اين تكست باكس توي ديتاگريد استفاده ميشه ولي مطمئن نيستم


DgvNBox در واقع اسم اصلی آن NBox هست .. که من یه کپی از کامپوننت NBox به نام DgvNBox زدم و با کمی دستکاری « خلاصه کردن » تو کلاس DgvNumericColumn ازش استفاده کردم .. اگه خوب دقت کنی تو این ستون هنگام وارد کردن اعداد ... همزمان سه رقم سه رقم هم جدا میشه و با زدن کلید "+" یکی به عدد اضافه و کلید "-" از عدد یکی کم میشه ... که این وظیفه کامپوننت DgvNBox هستش ...

امیدوارم که درست و واضح توضیح داده باشم ....