سلام خدمت کاربران سایت دانشجویان کامپیوتر
این بار با کاربران سایتمون هستیم با آموزش پروژه محور اتوماسیون مشاوراملاک تا باری دیگر در خدمت کاربرانمان باشیم
این پروژه با نرم افزار قدرتمند visual studio در محیط سی شارپ طراحی خواهد شد و بانک اطلاعاتی آن با sql server2008
خواهد شد.
در این پروژه به ترفند های زیادی خواهیم پرداخت و راه حل های زیادی برای طراحی هرچه بهتر فرم های پروژه خواهیم پرداخت.

ما در این پروژه به طریق های مختلفی به پیاده سازی کد های پروژه خواهیم پرداخت.
مدیران سایت به کاربران خود این آموزش پروژه محور رو پیشنهاد می نمایند و با دنبال کردن قسمت های مختلف این پروژه
اطمینان کافی می دهیم که به راحتی بتوانید پروژه های امسال این آموزش پروژه محور را به راحتی انجام دهید.
قسمت بیست و یکم اتوماسیون مشاوراملاک
در این قسمت به بررسی موارد ذیل می پردازیم:
- حذف اطلاعات خانه ها
- فیلتر کردن موقع انتخاب خانه
- جست و جو در اطلاعات خانه ها
مشاهده آنلاین این قسمت از آموزش در سایت دانشجویان کامپیوتر
همچنین می توانید ویدئو مربوط به این قسمت را با کیفیت اصلی دانلود نمایید.

با سلام
چند سوال داشتم از شما
1. من به روش DataSource اعمال ثبت و ویرایش و حذف رو دارم انجام میدم؛ وقتی datagridview رو درگ کردم رو فرم و بعدش از داخل پنجره دیتاسورس فلش کوچک جدولی که مد نظرم بود رو باز کردم که ستونهاش رو ببینم اونوقت روی هر ستون کلیک کردم و مثلا از یکی textbox از یکی دیگهcomboboxانتخاب کردم یکی از ستونهای من تاریخ تهیه هست که من هم برای اون datatimepickerرو انتخاب کردم که کاربر راحت تر باشه. (توی SQL تاریخ رو nvarcharتعریف کرده بودم). حالا که در حال کار روی ویرایش هستم وقتی برنامه رو اجرا می کنم روی ویرایش کلیک میکنم، ویرایش انجام میدم ولی وقتی روی ذخیره کلیک می کنم خطای زیر نشون داده میشه! میگم شاید به همین datatimepickerمربوط بشه! اینطوره؟
String or binary data would be truncated. Statment has been terminated
2. قبلا از شما پرسیده بودم که چطور کاربر ظاهرا مثلا عبارات چپ و راست رو ببینه اما پشت پرده من عدد یک و دو رو بذارم؟ ممکنه کدنویسی اش رو بهم بگید؟ باید از comboboxاستفاده کنم؟( به خاطر رعایت افزونگی داده می پرسم)
3. من یک textboxجایی گذاشتم که کاربر از طریق اون فیلتر دو انجام میده و باید حتما داخلش عدد بنویسه احتمالا اگر دستش به یک حرف بخوره و داخلش تایپ بشه از برنامه میاد بیرون!!! چه کنم که این اتفاق نیفته؟
سپاسگزارم از شما
با سلام و درود
1- در مورد این خطا که همان طور که خودتون گفتید نباید از اون استفاده می کردید زیرا شما نوع فیلدشو nvarchar قرار داده اید پس نمی توانید یه داده باینری رو داخل این فیلد ذخیره کنید از همون روشی که گفته شده انجام دهید.
2- واسه این مورد هم می توانید علاوه بر combobox از یه دکمه استفاده کنید که وقتی روش کلیک میشه فرمی باز شده و اطلاعات همه رو نمایش دهد و وقتی روی یکی کلیک شد خوب کد اون داخل textbox مربوطه قرار بگیرد. بنده هم همین و پیشنهاد می دم چون زمانی که شما از combobox استفاده می کنید فقط یک فیلد رو می توانید نمایش دهید ولی با این روش می توانید حتی همه فیلد ها رو هم نمایش دهید. حالا لینک زیر و باز کنید و ویدئو مربوطه را مشاهده نمایید.
برای نمایش آموزش کلیک کنید
3- اما این مورد و می توانید روی رویداد های textbox کد نویسی کنید و روی رویداد ورود اطلاعات در textbox کد نویسی کنید تا در صورتی که حروف وارد شد پیغام داده و داده ها رو پاک کند.
موفق باشید
در رابطه با سوال شماره اول هیچ راهی وجود نداره که بتونم از datetimepicker استفاده کنم؟
مثل تغییر نوع متغییرم از nvarcharبه …..؟
با سلام و درود
چرا راه زیاد هستش واسه این کار
اول این که پیش فرض تاریخ شمسی را ندارد و شما باید از تاریخ شمسی استفاده کنید که می توانید از کمپوننت های آماده استفاده کنید.
من در اینجا یک کامپوننت قرار دادم می توانید از این استفاده کنید تا تاریخ هم به شمسی باشد.
برای دانلود کامپوننت تاریخ شمسی کلیک کنید
این فایل dll را به بخش Refereneces اضافه کنید سپس در ToolBox این فایل dll را اضافه کنید تا دو بخش مربوط به ایت dll به ToolBox شما اضافه شود. سپس مس توانید به راحتی از این استفاده کنید و متن آن را در دیتابیس خود ذخیره کنید.

MessageBox.Show(dateTimePickerX1.Text);
تصویر زیر هم براتون قرار دادم که نتیجه کار را ببینید.
در رابطه با سوال سوم هم ممکنه خواهش کنم کدنویسی اش رو برام بذارید؟
ممنونم
با سلام و درود
اگر نمی توانید کد نویسی این قسمت را انجام دهید از این کامپوننت که براتون قرار دادم استفاده کنید.
دانلود کامپوننت پیشرفته
توضیحاتی در رابطه با این کامپوننت:
کامپوننت تکست باکس (Textbox) بسیار پیشرفته که دارای امکانات زیر است :
AutoSprator: جدا کننده اعداد در هنگام تایپ عدد بصورت (۱۳٫۱۲۰٫۰۰۰)
EnterToTab: کلید اینتر بصورت کلید تب عمل کند (صدای دینگ نیز برایConfirm کاربر نیز بگوش میرسد)
EscToClose: کلیدESC باعث بسته شدن فرم می گردد
FocusBackColor: هنگام ورود فوکوس به تکست باکس رنگ ضمینه تکست به رنگ دلخواه عوض خواهد شد
FocusFont: هنگام ورود فوکوس به تکست فونت تکست به فونت دلخواه تغییر پیدا خواهد کرد
FocusForeColor: رنگ نوشته داخل تکست با ورود فوکوس تغییر خواهد کرد
FocusTextSelect: با ورود فوکوس متن داخل تکست به حالت انتخاب در خواهد آمد
MessageEmptyShowDialog: اگر True باشد میتوانید از ۳ خاصیت ذیل استفاده کنید (هنگامی که تکست خالی باشد)
MessegeEmpty: پیامی که به کاربر نشان میدهد هنگام خالی بودن
MessegeEmptyInFormRight: پیام قسمت MessegeEmpty را در سمت راست نمایش دهد (اگر false باشد سمت چپ نمایش میدهد) روی خود فرم
MessegeEmptyShowInForm: اگر True باشد پیغام را در فرم نمایش میدهد وگرنه بصورت MessageDialog خود Windows نشان میدهد
TypeAllChar: اگر True باشد محدودیتی در تایپ کارکترها ایجاد نخواهد کرد(تکست معمولی)
TypeDateShamsi: اگر True باشد فقط فرمت تاریخ شمسی میگیرد(بدیهی است اگر true باشد محدودیت دیگری نمیتوانید در این حالت ایجاد کنید)
TypeEnglishOnly: اگر True باشد کاراکترهای انگلیسی را بعنوان ورودی می پذیرد
TypeFarsiOnly: اگر True باشد کارکترهای فارسی را بعنوان ورودی می پذیرد
TypeNumricOnly: اگر True باشد فقط کاراکترهای اعداد را بعنوان ورودی میپذیرد
TypeOtherChar: در این گزینه شما میتوانید کاراکترهای مجاز دیگر را بعنوان ورودی تعریف کنید
نکته۱: شما میتوانید همزمان با True کردن چند Type چند حالت را همزمان داشته باشید بعنوان مثال برای آدرس شما میخواهید اعداد و حروف فارسی و چند کاراکتر -+=_,:; را نیز همزمان داشته باشید برای این حالت تنظیمات بدین صورت خواهد بود:
TypeFarsi , TypeNumric = True
TypeOthet = -+_;:,
و بقیه false
نکته۲: هنگامیکه شما فقط TypeFarsi را True کرده باشید تکست بصورت خودکار زبان صفحه کلید را روی فارسی تنظیم میکند و هنگامیکه فقط TypeEnglis را True کردید زبان سیستم را روی انگلیسی تنظیم میکند
Fields:
NumberToChar: میتواند مقدار عددی تایپ شده در تکست را بصورت فارسی برای شما بنویسد ۲۱٫۰۳۲ ==>> بیست و یک هزار و سی و دو (محدودیت تا ۹۹۹ میلیارد)
TextValue: میتواند مقدار عددی تکست را بدون دردسر (بدونConvert) به شما بدهد ۹۲۰٫۱۰۲٫۰۰۰ = ۹۲۰۱۰۲۰۰۰
در صورتی که به مشکلی برخوردید اعلام نمایید.
موفق و پیروز باشید.