PDA

View Full Version : ورژن جدید کمپوننت DateTimePicker فارسی



mostafaaa
سه شنبه 25 بهمن 1390, 17:49 عصر
سلام
چند سال پیش توی یکی از پروژه هام بابت احتیاجی که داشتم کنترل DateTimePicker نوشتم و اون رو برای استفاده دیگر دوستان توی سایت هم قرار دادم(اینجا (http://barnamenevis.org/showthread.php?119525-%DA%A9%D9%88%D9%85%D9%BE%D9%88%D9%86%D9%86%D8%AA-%D8%AC%D8%AF%DB%8C%D8%AF-DateTimePicker-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C)). که خوب یا بد مورد توجه برخی از دوستان برنامه نویس قرار گرفت. در طی این مدت دوستان زیادی لطف داشتن و از طریق ایمیل و یا پیغام خصوصی درخواست داشتن که ورژن جدیدی از این کنترل رو بنویسم که متاسفانه علارقم میل باطنی خودم و به علت مشغله زیاد فرصت کار کردن روش رو به صورت کامل نداشتم ولی هر از چند گاهی که سرم خلوت تر میشد روش کار میکردم.( که هنوز از نظر من تکمیل نیست).
با این حال خوب یا بد اینجا قرارش میدم تا دوستان تستش کنن و اگه اشگالی داشت بهم اطلاع بدن تا برطرفش کنم.
properties
Format: برای تغیر فرمت نمایش از کوتاه "1/1/90" به بلند " چهارشنبه، 26 بهمن ، 1390"
GregorianDate: تاریخ معادل میلادی روز انتخاب شده
MaxDate
MinDate
Value: تاریخ شمسی به صورت String و با فرمت "yyyy/MM/dd"
Events
FormatChanged
ValueChanged
ButtonClick
Classes
توی Name Space کنترل هم یک کلاس به اسم PerCalendar هستش که برای تبدیل انواع تاریخ بین شمسی و میلادی میتونید ازش استفاده کنید.
آپدیت :1390/11/30
کنترل Persian Month Calendar هم ب Library فوق اضافه شد.
آپدیت : 1390/12/3
برخی از باگها بر طرف شد. ( رفع مشکل نشان دادن ضربدر قرمز در هنگام بروز خطا)
آپدیت : 1391/04/04
اضافه شدن Month calendar
قابلیت ست کردن تاریخ به صورت میلادی از طریق پراپرتی GregorianDate
...
88685
1395/11/07 سورس برنامه
طبق درخواست خیلی از دوستان برنامه نویس سورس این برنامه رو اینجا قرار میدم
144291

mehdi_9009
سه شنبه 25 بهمن 1390, 20:57 عصر
ممنون از كامپوننت كه گذاشتين آيا به ركورد ها بايند مي شه

ali190
سه شنبه 25 بهمن 1390, 21:04 عصر
ممنونم از کامپوننت عالیتون
ولی این کامپوننت خاصیت Allignment هم داره؟

djhooman
چهارشنبه 26 بهمن 1390, 00:26 صبح
خیلی عالی و جذابه !!!

یه سوال دارم ...

من توی بانک اطلاعاتی SQL ام یه فیلد دارم مربوط به تاریخ ...

فایل دی ال ال رو به رفرنس و تولباکسم اضافه کردم ، میخوام بدونم چجوری فیلد تاریخم رو به این تبدیل کنم ؟؟؟

توی دیتاست نوع فیلد رو چی قرار بدم ؟؟ ( بصورت پیشفرض Textbox هست و گزینه های دیگه هم داره )

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

حالا میشه بگید چجوری از این کامپوننت برای درج تاریخ توی برنامم استفاده کنم ...

لطفا اگه زحمتی نیست کامل بگید چیکار کنم ...

من مبتدی هستم ....

mostafaaa
چهارشنبه 26 بهمن 1390, 07:51 صبح
ممنون از كامپوننت كه گذاشتين آيا به ركورد ها بايند مي شه
ممنون از اینکه گوشزد کردید پراپرتی های Value و GetGergorianDate تو ورژن دوباره کمپایل شده قابلیت بایند شدن هم دارن.

mostafaaa
چهارشنبه 26 بهمن 1390, 07:52 صبح
اگه منظورتون TextAlign هستش ، نه.

mostafaaa
چهارشنبه 26 بهمن 1390, 07:54 صبح
خیلی عالی و جذابه !!!

یه سوال دارم ...

من توی بانک اطلاعاتی SQL ام یه فیلد دارم مربوط به تاریخ ...

فایل دی ال ال رو به رفرنس و تولباکسم اضافه کردم ، میخوام بدونم چجوری فیلد تاریخم رو به این تبدیل کنم ؟؟؟

توی دیتاست نوع فیلد رو چی قرار بدم ؟؟ ( بصورت پیشفرض Textbox هست و گزینه های دیگه هم داره )

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

حالا میشه بگید چجوری از این کامپوننت برای درج تاریخ توی برنامم استفاده کنم ...

لطفا اگه زحمتی نیست کامل بگید چیکار کنم ...

من مبتدی هستم ....
از پراپرتی Value استفاده کن.

mehdi_9009
چهارشنبه 26 بهمن 1390, 20:05 عصر
با سلام اين كامپوننت تو vs 2008 كار مي كنه من امتحان كردم نتونستم dll رو بيارم ممنون مي شم راهنمايي كنيد

mostafaaa
چهارشنبه 26 بهمن 1390, 20:20 عصر
با سلام اين كامپوننت تو vs 2008 كار مي كنه من امتحان كردم نتونستم dll رو بيارم ممنون مي شم راهنمايي كنيد

سلام
این کمپوننت تحت .Net Framework 4 کمپایل شده .
به نظرم بهتره که ورژن Visual studio رو به 2010 ارتقا بدید.

djhooman
پنج شنبه 27 بهمن 1390, 00:35 صبح
از پراپرتی Value استفاده کن.
میشه یکم کاملتر توضیح بدید ؟
وقتی کامپوننت رو درگ میکنم و پراپرتیش و تنظیم می کنم و Build میکنم پروژه رو ، فرم و که ران می کنم جای Datetimepicker یه علامت ضربدر میاد ....

چرا ؟

barnamenevisforme
پنج شنبه 27 بهمن 1390, 15:12 عصر
از این کار تون خیلی ممنون ،انشاءالله که همیشه در کارهاتون موفق باشید.

hamed_blooki
پنج شنبه 27 بهمن 1390, 17:26 عصر
ممنون-اگه ممکنه سورس رو هم بزارید که بچه تو توسعه اش شریک بشن.ولی ظاهرا علاقه به انتشار اون ندارین:متفکر:ولی حیفه واقعا بدون سورس همین طوری رها بشه.

swallow.pa
پنج شنبه 27 بهمن 1390, 18:52 عصر
ممنون-اگه ممکنه سورس رو هم بزارید که بچه تو توسعه اش شریک بشن.ولی ظاهرا علاقه به انتشار اون ندارین:متفکر:ولی حیفه واقعا بدون سورس همین طوری رها بشه.
شاید دوست نداره سورس رو بده همینطوری هم که DLL رو نمی دن باید ممنونشون باشیم

gilsoft
پنج شنبه 27 بهمن 1390, 20:52 عصر
سلام و خسته نباشید خدمت دوست عزیز mostafaaa (http://barnamenevis.org/member.php?53462-mostafaaa)
بابت کامپوننت فوق خیلی خیلی ممنونم .. واقعا زحمت کشیدید
پیشنهادمیدم تقویم شمسی و یه ماسک باکس جهت دریافت تاریخ شمسی (که از لحاظ ظاهر با کامپوننت فوق هماهنگ باشه) هم به این مجموعه اضافه کنید. به نظر من اگه هر سه کنترل باهم مچ باشند خیلی بهتره (ما مبتدی ها هم از سر در گمی در میایم)
خودم دارم از سه تا DLL مختلف استفاده می کنم . برای هرسه تا چندتا ماجول/فانکشن نوشتم.
اگه این حرکت انجام بشه خیلی عالی میشه ...
انشاالله که اون 2 تای دیگه هم اضافه بشه !!

یا حق ...

djhooman
پنج شنبه 27 بهمن 1390, 21:13 عصر
میشه یکم کاملتر توضیح بدید ؟
وقتی کامپوننت رو درگ میکنم و پراپرتیش و تنظیم می کنم و Build میکنم پروژه رو ، فرم و که ران می کنم جای Datetimepicker یه علامت ضربدر میاد ....

چرا ؟
??????????????????????

mostafaaa
جمعه 28 بهمن 1390, 14:29 عصر
میشه یکم کاملتر توضیح بدید ؟
وقتی کامپوننت رو درگ میکنم و پراپرتیش و تنظیم می کنم و Build میکنم پروژه رو ، فرم و که ران می کنم جای Datetimepicker یه علامت ضربدر میاد ....

چرا ؟
سلام
چک کن Target Framework روی .Net Framework 4 باشه نه روی .Net Framework 4 Client profile....

mostafaaa
جمعه 28 بهمن 1390, 14:33 عصر
سلام و خسته نباشید خدمت دوست عزیز mostafaaa (http://barnamenevis.org/member.php?53462-mostafaaa)
بابت کامپوننت فوق خیلی خیلی ممنونم .. واقعا زحمت کشیدید
پیشنهادمیدم تقویم شمسی و یه ماسک باکس جهت دریافت تاریخ شمسی (که از لحاظ ظاهر با کامپوننت فوق هماهنگ باشه) هم به این مجموعه اضافه کنید. به نظر من اگه هر سه کنترل باهم مچ باشند خیلی بهتره (ما مبتدی ها هم از سر در گمی در میایم)
خودم دارم از سه تا DLL مختلف استفاده می کنم . برای هرسه تا چندتا ماجول/فانکشن نوشتم.
اگه این حرکت انجام بشه خیلی عالی میشه ...
انشاالله که اون 2 تای دیگه هم اضافه بشه !!

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

djhooman
جمعه 28 بهمن 1390, 23:07 عصر
سلام
چک کن Target Framework روی .Net Framework 4 باشه نه روی .Net Framework 4 Client profile....


چک کردم ... روی Net Framework 4 بود .... :گریه::گریه::گریه:

javad.nic63
شنبه 29 بهمن 1390, 09:35 صبح
سلام
چک کن Target Framework روی .Net Framework 4 باشه نه روی .Net Framework 4 Client profile....
دوست عزیز از زحماتت واقعاً ممنونم. خیلی خوبه.
ولی ای کاش برای Client Profile هم طراحی کرده بودی که در این صورت خیلی خوب می شد چون Client Profile دارای مزایای زیادیه. مرسی از زحماتت

djhooman
شنبه 29 بهمن 1390, 13:32 عصر
چک کردم ... روی Net Framework 4 بود .... :گریه::گریه::گریه:


چیکار کنم ؟؟؟؟؟؟

alimanam
شنبه 29 بهمن 1390, 15:17 عصر
با سلام

در ابتدا از اینکه کنترل خودتون رو به روز کردین سپاسگذارم . در ادامه یه سوال داشتم دوست عزیز , آیا دلیل خاصی وجود داشت که با دات نت فرم ورک نسخه 4 این کنترل رو نوشتین ؟ من هنوز کنترل شما رو تست نکردم ولی خوب بود ( البته در صورت امکان ) با نسخه های پایین تر مینوشتین که تعداد کسانی که میتونستن از این کنترل استفاده کنن بیشتر میشد به این دلیل که خیلی ها در حال حاضر با نسخه 8 یا 9 ویژوال استودیو دارن برنامه مینویسن .

موفق باشید./

djhooman
یک شنبه 30 بهمن 1390, 00:04 صبح
چیکار کنم ؟؟؟؟؟؟


عکس اررور و ضمیمه می کنم

اکه datetimepicker رو تو پروپرتی دیتاش روی فیلد تاریخم ست نکنم بدون مشکل نشون میده اما اگه به فیلد وصلش کنم مثل تصویر پیوست میشه ...

82898

mostafaaa
یک شنبه 30 بهمن 1390, 10:00 صبح
عکس اررور و ضمیمه می کنم

اکه datetimepicker رو تو پروپرتی دیتاش روی فیلد تاریخم ست نکنم بدون مشکل نشون میده اما اگه به فیلد وصلش کنم مثل تصویر پیوست میشه ...

82898
سلام
دوست من اگه زمانی که به مشکل میخوری کامل مشکلت رو شرح بدی شاید زودتر به نتیجه برسی.
ورژن VS که استفاده میکنی چیه؟
چطور داری به پراپرتی VAlue مقدار میدی؟
ورژن جدید تر رو از پست اول دانلود کن و دوباره تست کن.

mostafaaa
یک شنبه 30 بهمن 1390, 10:19 صبح
دوست عزیز از زحماتت واقعاً ممنونم. خیلی خوبه.
ولی ای کاش برای Client Profile هم طراحی کرده بودی که در این صورت خیلی خوب می شد چون Client Profile دارای مزایای زیادیه. مرسی از زحماتت
سلام دوست من
همانطور که میدونید Client profile یه ساب کلاس از .net frame work 4 هستش و این یعنی اینکه یه چیزهایی کمتر از کلاس اصلی توشه و البته بخش اعظمی از کلاس اصلی رو هم به ارث برده... و برخی از لایبرری های اصلی .net framework توش نیست.

The .NET Framework 4 Client Profile is a subset of the .NET Framework 4 that is optimized for client applications. It provides functionality for most client applications, including Windows Presentation Foundation (WPF), Windows Forms, Windows Communication Foundation (WCF), and ClickOnce features. This enables faster deployment and a smaller install package for applications that target the .NET Framework 4 Client Profile.
علت این که من ازش استفاده نکردم اینه که :

system.design assembly is not currently targeted as .net framework client profile

grafic
دوشنبه 01 اسفند 1390, 15:11 عصر
سلام وست عزیز

این DLL که گذاشتین خیلی عالی بود

حالا من اگر بخوام اختلاف دوتا تاریخ رو به روز در بیارم باید جه کار کنم ؟

djhooman
دوشنبه 01 اسفند 1390, 22:54 عصر
سلام
دوست من اگه زمانی که به مشکل میخوری کامل مشکلت رو شرح بدی شاید زودتر به نتیجه برسی.
ورژن VS که استفاده میکنی چیه؟
چطور داری به پراپرتی VAlue مقدار میدی؟
ورژن جدید تر رو از پست اول دانلود کن و دوباره تست کن.

مقدار پراپرتی Value رو به فیلد تاریخ دیتابیسم بایند می کنم ....

ورژن 2010 هستش ...

تست کردم بازم نشد ...

mostafaaa
سه شنبه 02 اسفند 1390, 13:42 عصر
مقدار پراپرتی Value رو به فیلد تاریخ دیتابیسم بایند می کنم ....

ورژن 2010 هستش ...

تست کردم بازم نشد ...
سلام
تاريخ رو با چه فرمتي تو ديتابيس ذخيره ميکنيد?
فرمت ورودي پراپرتي value به صورت yyyy/mm/dd و string بايد باشه.
در ضمن حواستون باشه که فيلد ديتابيستون null هم نباشه.

grafic
سه شنبه 02 اسفند 1390, 14:05 عصر
سلام

کسی جواب من رو نداد ؟!!!!!!

برای کم کردن دوتا تاریخ و بدست آوردن اختلاف به روز چه کار باید بکنم ؟

djhooman
سه شنبه 02 اسفند 1390, 23:33 عصر
سلام
تاريخ رو با چه فرمتي تو ديتابيس ذخيره ميکنيد?
فرمت ورودي پراپرتي value به صورت yyyy/mm/dd و string بايد باشه.
در ضمن حواستون باشه که فيلد ديتابيستون null هم نباشه.

میشه دقیقا بگید چیکار کنم ؟؟؟

پراپرتی ولیو توی کجا باید بصورت yyyy/mm/dd ست بشه ؟
چی رو استرینگ بکنم ؟

اگه میشه یکم آماتورگونه توضیح بدید استپ بای استپ ...
:گریه:

mostafaaa
چهارشنبه 03 اسفند 1390, 10:41 صبح
میشه دقیقا بگید چیکار کنم ؟؟؟

پراپرتی ولیو توی کجا باید بصورت yyyy/mm/dd ست بشه ؟
چی رو استرینگ بکنم ؟

اگه میشه یکم آماتورگونه توضیح بدید استپ بای استپ ...
:گریه:

سلام
امیدوارم با این Sample مشکلتون حل بشه.
http://www.mediafire.com/?tlnihkq95o0mruq

در ضمن فایل اصلی کمپوننت رو هم دوباره از پست اول دانلود کنید.
آپدیت شده و برخی از باگهاش هم رفع شده.

djhooman
چهارشنبه 03 اسفند 1390, 18:05 عصر
سلام
امیدوارم با این Sample مشکلتون حل بشه.
http://www.mediafire.com/?tlnihkq95o0mruq

در ضمن فایل اصلی کمپوننت رو هم دوباره از پست اول دانلود کنید.
آپدیت شده و برخی از باگهاش هم رفع شده.


عزیز ، میشه سورس این سمپل رو بذاری ؟؟؟ فقط exe هستش که !!!

میخوام ببینم چیکارا کردی توش ....

mostafaaa
چهارشنبه 03 اسفند 1390, 19:20 عصر
سلام
شرمنده دوست من.
موقع آپ کردن عجله داشتم این شد که یادم رفت سورسش رو هم آپ کنم.
http://www.mediafire.com/?ter82sb9nd9pxn4

djhooman
پنج شنبه 04 اسفند 1390, 00:18 صبح
مشکل ضربدره حل شده ...

اما به دیتابیس بایند نمیشه ...

تاریخ انتخاب میشه کرد ، اما توی فیلد تاریخ مقدار تاریخ دخیره نمیشه !!!!

djhooman
جمعه 05 اسفند 1390, 18:24 عصر
کسی نیست کمک کنه ؟؟؟

neynavaz
یک شنبه 20 فروردین 1391, 16:36 عصر
دوست عزیز تاریخ بصورت یکشنبه 20 فروردین 1391 نشون میده
چطور میشه 1390/01/21 نشون بده؟

mostafaaa
یک شنبه 20 فروردین 1391, 20:07 عصر
دوست عزیز تاریخ بصورت یکشنبه 20 فروردین 1391 نشون میده
چطور میشه 1390/01/21 نشون بده؟

از پراپرتي format استفاده کن.

neynavaz
دوشنبه 21 فروردین 1391, 08:25 صبح
از پراپرتي format استفاده کن.
خیلی ممنون ایشاله خوش بخت بشی جوون...

Morteza_s
چهارشنبه 06 اردیبهشت 1391, 12:25 عصر
آقا مصطفی سلام
ممنون بابت زحماتی که برای توسعه این کمپوننت کشیدی
من به یه مشکل برخوردم، وقتی کنترل رو روی فرم قرار میدم در قسمت Designer فرم این خطاها رو میده:
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer

'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.DateTimePicker1 = New PersianDateTimePicker.DateTimePicker()
Me.SuspendLayout()
'
'DateTimePicker1
'
Me.DateTimePicker1.BackColor = System.Drawing.SystemColors.Control
Me.DateTimePicker1.Font = New System.Drawing.Font("B Homa", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(178, Byte))
Me.DateTimePicker1.Format = PersianDateTimePicker.DateTimePicker.DateFormat.[Long]
Me.DateTimePicker1.Location = New System.Drawing.Point(37, 23)
Me.DateTimePicker1.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5)
Me.DateTimePicker1.MaxDate = "1500/4/23"
Me.DateTimePicker1.MinDate = "1200/2/15"
Me.DateTimePicker1.Name = "DateTimePicker1"
Me.DateTimePicker1.Size = New System.Drawing.Size(215, 28)
Me.DateTimePicker1.TabIndex = 0
Me.DateTimePicker1.Value = "1391/02/06"
'
'Form1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(284, 262)
Me.Controls.Add(Me.DateTimePicker1)
Me.Name = "Form1"
Me.Text = "Form1"
Me.ResumeLayout(False)

End Sub
Friend WithEvents DateTimePicker1 As PersianDateTimePicker.DateTimePicker

در خطهای 9 ، 16 ، 37
متن خطاها به ترتیب:

Error 1: Type 'PersianDateTimePicker.DateTimePicker' is not defined.
Error 2: 'PersianDateTimePicker' is not declared. It may be inaccessible due to its protection level.
Error 3: Type 'PersianDateTimePicker.DateTimePicker' is not defined.

mostafaaa
چهارشنبه 06 اردیبهشت 1391, 14:16 عصر
سلام
http://barnamenevis.org/showthread.php?327976-%D9%88%D8%B1%DA%98%D9%86-%D8%AC%D8%AF%DB%8C%D8%AF-%DA%A9%D9%85%D9%BE%D9%88%D9%86%D9%86%D8%AA-DateTimePicker-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C&p=1446196&viewfull=1#post1446196

Morteza_s
چهارشنبه 06 اردیبهشت 1391, 21:19 عصر
ممنون
برای دوستانی که این مشکل رو دارند
روش تغییر Target Framework:
فایل پروژه خود با فرمت vbproj یا vcproj را با Notepad یا هر برنامه دیگری باز کنید و خط زیر را حذف و فایل را ذخیره کنید:
<TargetFrameworkProfile>Client</TargetFrameworkProfile>

mostafaaa
پنج شنبه 07 اردیبهشت 1391, 00:35 صبح
ممنون
برای دوستانی که این مشکل رو دارند
روش تغییر Target Framework:
فایل پروژه خود با فرمت vbproj یا vcproj را با Notepad یا هر برنامه دیگری باز کنید و خط زیر را حذف و فایل را ذخیره کنید:
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
یا میتونید ....

To change the target .NET Framework version or profile

In Visual Studio, open the project you want to change.

Right-click the project in Solution Explorer and then click Properties.

In the Project Designer, locate the Target Framework list, as follows.

For Visual Basic projects, click the Compile tab and then click Advanced Compile Options. The Target Framework list is in the Advanced Compiler Settings dialog box.

For Visual C# projects, the Target Framework list is on the Application tab of the Project Designer. For more information, see Application Page, Project Designer (C#).

For Visual F# projects, the Target Framework list is on the Application tab of the Project Designer.

In the Target Framework list, select the .NET Framework version or profile that you want.

When you click OK, the project unloads and then reloads in the integrated development environment (IDE). The project now targets the .NET Framework version that you just selected.

raminsoft
شنبه 06 خرداد 1391, 10:44 صبح
با سلام
و ممنون بخاطر بروز کردن کامپوننت
متاسفانه وقتی که به پروژه رو Sign میکنیم ( Sign the assembly ) موقع اجرا یا کامپایل این خطا رو میده :

Assembly generation failed -- Refrenced assembly 'PersianDateTimePicker' dose not have a strong name

ممنون میشم این مشکل رو نیز رفع نمایید.

nioton_1387
چهارشنبه 24 خرداد 1391, 23:34 عصر
کامپوننت خیلی قشنگی درست کردی... دستت درد نکنه
من دانلود کردم .. ولی پروژه من می بایست با نت2 کامپایل بشه و نشد که بشه .. اما در کل ممنون

mostafaaa
سه شنبه 06 تیر 1391, 07:19 صبح
سلام
از ورژن قبلی استفاده کن.

web_user
یک شنبه 01 مرداد 1391, 07:37 صبح
سلام
این کمپوننت تحت .Net Framework 4 کمپایل شده .
به نظرم بهتره که ورژن Visual studio رو به 2010 ارتقا بدید.

سلام دوست عزيز:
كامپوننت تميزي هست ولي حيف امكان استفاده از اونو ندارم چون پروژه من با Frame Work 3.5 كمپايل شده.
البته كامپوننت قبليت هم خوب چيزيه منتها مشكل اساسي كه داره اينكه فرمت تاريخش 2/2/1391هست و بهتر بود كه 02/02/1391 باشه چون بصورت رشته تو بانك ثبت شده براي گزارش گيري دچار مشكل ميشه.
بازم مرسي.

web_user
پنج شنبه 05 مرداد 1391, 06:23 صبح
ُسلام
من يه كامپوننت DateTimePicker شمسي دارم كه خيلي خوب هست اما يه سري باگ داره از دوستان كسي ميتونه بررسيش كنه،باگاشو برطرف كنه؟
يكي از باگ هاش اينه كه در برخي از تاريخ ها مثل 31-04-1391 ارور ميده و از برنامه ميپره بيرون. بدبختيش اينجاست كه من پروژه خودمو باهاش نوشتم!!!

web_user
شنبه 07 مرداد 1391, 12:25 عصر
سلام
چطور ميشه اطلاعات ديتا گريد رو به كنترل ديتا گريد فرستاد، من كد رو اينطوري مي نويسم ولي ارور ميده:
persianDateTimePicker2.Value= dataGridView1.CurrentRow.Cells[10].Value.ToString();
به اين شكل هم مي نويسم باز ارور ميده
persianDateTimePicker2.Value+""= dataGridView1.CurrentRow.Cells[10].Value.ToString();
لطفاً راهنمايي كنيد

web_user
شنبه 07 مرداد 1391, 12:48 عصر
سلام
با انجام اين كار ميشه از اين كامپوننت در فرم ورك 3.5 ازش استفاده كرد.
مرسي mostafaaa جان!

parhamt
دوشنبه 06 شهریور 1391, 00:02 صبح
سلامmostafaaa جان
سپاسگزار از همت و وقتي كه گذاشتي.ميخواستم بدونم حالتي هست كه به value بديم و combo بجاي تاريخ مقدار خالي نشون بده.
موفق باشي

ms_vb1987
چهارشنبه 01 آذر 1391, 11:20 صبح
سلام
ممنون از زحمت شما
فقط اگر روی Event هاش کار کنی بهتر میشه
براش Event هایی مثل DateChage هم بذار و رویدادهای فعلی اش هم بررسی کن اگر کاربرد ندارند میتوانی با دستور زیر حذفشون کنی...

<Browsable(False), EditorBrowsable(EditorBrowsableState.Never)>
Shadows Event EventName

JaVa
پنج شنبه 02 آذر 1391, 00:03 صبح
سلام ...

ممنون از زحمتی که کشیدی ولی خاصیت چب به راست براش نذاشتی !!!!!!!!!!

یا اینکه من پیداش نمی کنم.؟

zenith12000
سه شنبه 07 آذر 1391, 19:52 عصر
با سلام
خسته نباشید میگم بخاطر کنترل خیلی زیبا و کاربردی که نوشتین. انیمیشن های موقع انتخاب سال و ماه که واقعا محشره.
فقط یک مشکل اساسی داره و اون اینکه با کیبورد نمیشه تاریخ را توش تایپ کرد. اگر امکان کار در حالت متنی هم بتونین بهش اضافه کنین خیلی عالی میشه. به نظر من باید به کاربرها اجازه داد بدون استفاده از ماوس هم براحتی تاریخ مورد نظرشون را وارد کنند و حتی امکان بالا و پایین کردن روز و ماه و سال بطور جداگانه بوسیله کیبورد بدون اینکه datepicker نمایش داده شده باشه میتونه خیلی مفید باشه.
راستی چرا بصورت open source منتشرش نمیکنید تا بقیه هم بتونن ویژگیهای بیشتری بهش اضافه کنن؟ حیفه واقعا این کامپوننت که به این خوبی نوشته شده نیمه کاره بمونه
بازهم ممنون

ok.baby
چهارشنبه 20 دی 1391, 22:36 عصر
سلام
چند سال پیش توی یکی از پروژه هام بابت احتیاجی که داشتم کنترل DateTimePicker نوشتم و اون رو برای استفاده دیگر دوستان توی سایت هم قرار دادم(اینجا (http://barnamenevis.org/showthread.php?119525-%DA%A9%D9%88%D9%85%D9%BE%D9%88%D9%86%D9%86%D8%AA-%D8%AC%D8%AF%DB%8C%D8%AF-DateTimePicker-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C)). که خوب یا بد مورد توجه برخی از دوستان برنامه نویس قرار گرفت. در طی این مدت دوستان زیادی لطف داشتن و از طریق ایمیل و یا پیغام خصوصی درخواست داشتن که ورژن جدیدی از این کنترل رو بنویسم که متاسفانه علارقم میل باطنی خودم و به علت مشغله زیاد فرصت کار کردن روش رو به صورت کامل نداشتم ولی هر از چند گاهی که سرم خلوت تر میشد روش کار میکردم.( که هنوز از نظر من تکمیل نیست).
با این حال خوب یا بد اینجا قرارش میدم تا دوستان تستش کنن و اگه اشگالی داشت بهم اطلاع بدن تا برطرفش کنم.
properties
Format: برای تغیر فرمت نمایش از کوتاه "1/1/90" به بلند " چهارشنبه، 26 بهمن ، 1390"
GregorianDate: تاریخ معادل میلادی روز انتخاب شده
MaxDate
MinDate
Value: تاریخ شمسی به صورت String و با فرمت "yyyy/MM/dd"
Events
FormatChanged
ValueChanged
ButtonClick
Classes
توی Name Space کنترل هم یک کلاس به اسم PerCalendar هستش که برای تبدیل انواع تاریخ بین شمسی و میلادی میتونید ازش استفاده کنید.
آپدیت :1390/11/30
کنترل Persian Month Calendar هم ب Library فوق اضافه شد.
آپدیت : 1390/12/3
برخی از باگها بر طرف شد. ( رفع مشکل نشان دادن ضربدر قرمز در هنگام بروز خطا)
آپدیت : 1391/04/04
اضافه شدن Month calendar
قابلیت ست کردن تاریخ به صورت میلادی از طریق پراپرتی GregorianDate
...
88685

شما که همچین کامپوننت زیبا و پرکاربردی نوشتی، کاش یکم ورژن ها رو کمتر میگرفتی که تعداد بیشتری بتونن استفاده کنن.
من با فریم ورک 3 و ویژوال 2008 چیکار کنم حالا :ناراحت:

asadi4t
پنج شنبه 21 دی 1391, 22:33 عصر
سلام
عالی
ممنون

parisa.s
شنبه 14 بهمن 1391, 23:30 عصر
سلام، من قصد داشتم از این کامپوننت استفاده کنم، فایل Dll به Toolbox اضافه نمیشه،هیچ اروری نمیده ولی هیچ کنترلی هم به Toolbox اضافه نمیشه

فرید نجفلو
شنبه 14 بهمن 1391, 23:51 عصر
ورژن فریم ورک پروژه رو چک کنید (باید 4 باشه)
راحت ترین راه اضافه کردن کنترل به ToolBox هم اینکه فایل Dll رو کپی و توی یکی از تب های Toolbox (مثلا General ) کلیک راست و Paste کنید

pourya-x7x
چهارشنبه 04 اردیبهشت 1392, 12:51 عصر
با سلام
خسته نباشید میگم بخاطر کنترل خیلی زیبا و کاربردی که نوشتین. انیمیشن های موقع انتخاب سال و ماه که واقعا محشره.
فقط یک مشکل اساسی داره و اون اینکه با کیبورد نمیشه تاریخ را توش تایپ کرد. اگر امکان کار در حالت متنی هم بتونین بهش اضافه کنین خیلی عالی میشه. به نظر من باید به کاربرها اجازه داد بدون استفاده از ماوس هم براحتی تاریخ مورد نظرشون را وارد کنند و حتی امکان بالا و پایین کردن روز و ماه و سال بطور جداگانه بوسیله کیبورد بدون اینکه datepicker نمایش داده شده باشه میتونه خیلی مفید باشه.
راستی چرا بصورت open source منتشرش نمیکنید تا بقیه هم بتونن ویژگیهای بیشتری بهش اضافه کنن؟ حیفه واقعا این کامپوننت که به این خوبی نوشته شده نیمه کاره بمونه
بازهم ممنون
من هم با نظر ایشون موافقم !
این که بشه به صورت همون Text که هستش بهش مقدار بدیم خیلی خوب میشه ! مثلا با زدن دکمه بالا و پایین کیبورد تاریخ کم و زیاد بشه ، مثل ورژن اصلی ماکروسافت !

در ضمن 1 سوال هم داشتم ، اینکه این انیمیشن های سال و ماه رو بهش اضافه کردین ، باعث کندی برنامه نمیشه ؟؟

totti_acmilan17
چهارشنبه 11 اردیبهشت 1392, 10:24 صبح
عکس اررور و ضمیمه می کنم

اکه datetimepicker رو تو پروپرتی دیتاش روی فیلد تاریخم ست نکنم بدون مشکل نشون میده اما اگه به فیلد وصلش کنم مثل تصویر پیوست میشه ...

82898

آقا اگه مشکلت حل شده ما رو هم راهنمایی کن همین مشکل رو دارم بایند کردم ولی وقتی کلیک کنم که باز شه همین خطا رو تو 2010 میده !!!!!

h_pahlevan
یک شنبه 15 اردیبهشت 1392, 09:16 صبح
دمت گرم خيلي خوب بود.دستت درد نكنه دادش مهندس:تشویق:

mohsen22
جمعه 03 خرداد 1392, 00:19 صبح
سلام اگر کسی سمپل پست 32 رو داونلود کرده مجددا اپ کنه چون لینکش حذف شده!؟
مرسی

programerinfonet
دوشنبه 20 خرداد 1392, 11:43 صبح
شلام
دوستان من این کامپوننت رو دانلود و اضافه کردم اما خطا میده که فضای نام این کامپوننت رو اضافه نمایید
فضای نامش چیه ؟ نمی دونم
105346

raziyehbazargan
جمعه 31 خرداد 1392, 10:33 صبح
من از datetime picker که دوستان در سایت گذاشتن استفاده میکنم .میخوام اگر تاریخ 1392/03/12 بود در قسمت دیگه تعداد روز رو بگیره مثلا 10 روز و تاریخ 1392/03/22 رو نمایش بده

چطور اینکارو میتونم انجام بدم؟؟؟؟؟؟؟؟؟

mohsen22
جمعه 31 خرداد 1392, 23:09 عصر
من از datetime picker که دوستان در سایت گذاشتن استفاده میکنم .میخوام اگر تاریخ 1392/03/12 بود در قسمت دیگه تعداد روز رو بگیره مثلا 10 روز و تاریخ 1392/03/22 رو نمایش بده

چطور اینکارو میتونم انجام بدم؟؟؟؟؟؟؟؟؟

خدمت شما.. اینو می خواستین ؟

raziyehbazargan
یک شنبه 02 تیر 1392, 09:08 صبح
خدمت شما.. اینو می خواستین ؟

دوست عزیز ممنومم دقیقا چیزیه که میخوام
اما متد dateadd رو ندارم؟؟؟؟؟؟
از همین کنترل دارن استفاده میکنم
اما همچین چیزی ندارم

Sub Zero
جمعه 04 مرداد 1392, 14:58 عصر
اقا مصطفی لطف کن واسه اینکه کار من و خیلی از دوستای دیگه راه بیافته با فریم ورک 3 یا 3.5 هم کامپایلش کن

Sub Zero
جمعه 04 مرداد 1392, 15:16 عصر
دوست عزیز ممنومم دقیقا چیزیه که میخوام
اما متد dateadd رو ندارم؟؟؟؟؟؟
از همین کنترل دارن استفاده میکنم
اما همچین چیزی ندارم
روی متد کلیک راست کنید و گزینه Goto Definition رو بزنید تا متوجه بشید از کجا اومده . در ضمن برای نمایش درست نتیجه اضافه کردن روزها از کد زیر استفاده کنید .

If TextBox1.Text <> "" Then
Dim d2 As Date
Dim d3 As Integer
d2 = PersianDateTimePicker1.Value
d3 = TextBox1.Text
With DateAdd(DateInterval.Day, d3, d2)
Label4.Text = String.Format("{0}/{1}/{2}", .Year, .Month, .Day)
End With
Else
MsgBox("empty")
End If

1157478
جمعه 25 مرداد 1392, 20:19 عصر
سلام
یه سوال داشتم و اون اینه که من تاریخ رو تو دیتا بیس ذخیره کردم حالا میخوام برای ویرایش تاریخ قبلی اون رو از پایگاه داده به داخل DateTimePicker لود کنم چه کار باید بکنم؟

مثلا یه همچین چیزی میخوام


"PersianDateTimePicker .Value="1392/03/15

که 1392/03/15 را از دیتا بیس که قبلا ذخیره شده بوده داخلش قرار میدهیم

ممنون اگه کسی راهنمایی کنه

nasim bahari
شنبه 26 مرداد 1392, 16:34 عصر
بجای value از text استفاده کن

morrning
چهارشنبه 10 مهر 1392, 14:47 عصر
آقا دستت درد نکنه بابت این کامپوننت . میشه با دات نت 2 هم کامپایلش کنید؟

barnamenevism
شنبه 20 مهر 1392, 20:51 عصر
با سلام می دونم خیلی وقته از این تاپیک کذشته ولی اینو میذارم شاید یکی آمدو اینم بدردرش خورد.
System.Globalization.PersianCalendar p = new System.Globalization.PersianCalendar();
dateTimePicker1.DateValue = p.GetYear(DateTime.Now).ToString() + "/" + p.GetMonth(DateTime.Now).ToString("#") + "/" + p.GetDayOfMonth(DateTime.Now).ToString("#");
اینو بزارید تو فرم لود تا وقتی لود میشه مقدار datavalue نال نباشه

hossainmohammady
شنبه 27 مهر 1392, 09:28 صبح
با سلام و تشکر از کامپوننت عالی تون
فقط یه مشکل اینکه من میخوام کامپوننت هر وقت نمایش پیدامیکنه تاریخ روز رو نمایش بده البته اینو که میگم تو برنامه دمو که نوشته بودید درست بود اما تو برنامه من نه
و مثلا وقتی value کامپوننت رو خالی میکنم درست میشه ولی موقع کار با اون ارور میده تو عکس میتونید ببینید

NaserHadi
دوشنبه 27 آبان 1392, 15:56 عصر
سلام
منم چنین مشکلی دارم اگه ممکنه جواب بدید ممنون میشم

barnamenevisjavan
سه شنبه 28 آبان 1392, 15:39 عصر
سلام نسخه WPF هم داره؟

behrooz69
چهارشنبه 27 آذر 1392, 22:14 عصر
خو دوستان مجبورین مگه . دارین کاماننتی رو تست میکنین که مشکل داره از HmFarsicalender استفاده کنید . تو پستها سرچ میکردید مشکلتون حل می شد .
دوست من مقدار رشته رو که نمیتونی توش Integer ذخیره کنی . باید تو دیتابیس مقدار Date رو بذاری Nvarchar و بعد بیای تو برنامه تکس باکس مربوط به تاریخ رو توش درج کنی یا سرچ کنی. والا به مشکل 30 روز و 28 روز و 31 روزه بودن ما و تاریخ میلادی برمیخورید . تو پست های من سرچ کنید هست

اوبالیت به بو
یک شنبه 15 دی 1392, 15:42 عصر
ممنون از پروژه خوبتون اما من یک مشکلی دارم اون این هست که من می خوام دستوری داشته باشم تا Value کنترل رو null کنم. یعنی مقدار نداشته باشد. چون ممکن است در فرم من کاربر فیلد تاریخ را نداند و من میخوام مقدار Null به دیتابایس ارجاع بدم تنها راهی هم که می تونم تشخیص بدم این هست که مقدار Value رو چک کنم که مقدار دارد یا ندارد. کنترل شما خاصیت Null پذیر بودن ندارد.

farhad85
یک شنبه 15 دی 1392, 19:05 عصر
سلام ممنونم ااز شما
اولین وآخرین سالش از چند تا چند شروغ کردین؟

نو ورژن معمولیش از آخرین یا اولین سال بالا پاینتر رد کنی خطا میده ! اینو حلش کردی؟

bahram_aria
دوشنبه 17 شهریور 1393, 15:31 عصر
به نظر من این کنترل از لحاظ بسری و کارایی بسیار کنترل خوبی شده. خواهشم اینه که رهاش نکنید و از این به بعد روی سبک کردن کنترل کار کنید و کاری کنید که موقع کلیک کردن Flush نزنه :-) من خیلی لذت بردم و در برنامم استفاده کردم. موفق باشین.

falcon1
پنج شنبه 25 دی 1393, 11:43 صبح
با تشکر فراوان - از زحمتی که کشیدید.

nazari546
دوشنبه 29 دی 1393, 22:30 عصر
سلام ممنون از شما

با توجه به اینکه معمولاً برای چاپ از کریستال ریپورت استفاده میشه و کریستال ریپورت از دات نت 4 پشتیبانی نمیکنه اگه امکان داره با دات نت 3 باشه همه میتونن در برنامه هاشون استفاده کنن

farhad85
پنج شنبه 02 بهمن 1393, 22:32 عصر
ممنون خسته نباشی وافعا

haamidd
چهارشنبه 08 بهمن 1393, 20:43 عصر
اقا من این فایل dll رو به ریفرنسام اد کردم

حالا چطور باید این date picker رو به پروژم اضافه کنم؟!!


توی toolbox چجوری باید بیارمش؟!!

haamidd
دوشنبه 13 بهمن 1393, 07:39 صبح
اقا من این فایل dll رو به ریفرنسام اد کردم

حالا چطور باید این date picker رو به پروژم اضافه کنم؟!!


توی toolbox چجوری باید بیارمش؟!!



جواااااااااااااب لطفا

Redmond
چهارشنبه 22 بهمن 1393, 11:41 صبح
اقا من این فایل dll رو به ریفرنسام اد کردم

حالا چطور باید این date picker رو به پروژم اضافه کنم؟!!


توی toolbox چجوری باید بیارمش؟!!



جواااااااااااااب لطفا

فایل dll ای که دانلود کردی رو Durg and Drop کن بندازش توی قسمت Toolbox های ویژوال استادیو

haamidd
چهارشنبه 22 بهمن 1393, 15:54 عصر
نشد که حاجی

نسترن خسروی
چهارشنبه 03 تیر 1394, 19:56 عصر
سلام ببخشید چطور میشه از این تقویم استفاده کرد و اون رو به پروزه اضافه کرد؟

afi_program
چهارشنبه 07 مرداد 1394, 22:05 عصر
خیلی ممنون.
من از toolbox به فرمم اضافه اش کردم ولی خطا میده:Error 2 The type or namespace name 'PersianDateLibrary' could not be found (are you missing a using directive or an assembly reference?)

vB.N3T
یک شنبه 12 مهر 1394, 17:50 عصر
دوستان این خطا چطور میشه رفع کرد

Error 1 The type or namespace name 'PersianDateLibrary' could not be found (are you missing a using directive or an assembly reference?) D:\Project Farmer\Farmer\Farmer\Frm_month.Designer.cs 79 17 Farmer

mohammadmowlavi
چهارشنبه 29 مهر 1394, 10:58 صبح
سلام ضمن تشکر از زحماتتون چطور میشه به کاربرم اجازه بدیم خودش داخل این کامپوننت تایپ کنه
یعنی مجبور نباشه فقط انتخاب کنه!

Mohammad.Bahari
یک شنبه 22 آذر 1394, 17:27 عصر
سلام دوستان
خیلی عذر میخوام
از این DLL باید خودم با کد نویسی ایجادش کنم ؟
یا از Tool Box هم میشه آوردتش ؟

f.hojjati
یک شنبه 02 اسفند 1394, 04:13 صبح
سلام من میخواستم مدت رو با استفاده از دو تاریخ بدست بیارم میشه راهنماییم کنین؟

mostafaaa
پنج شنبه 07 بهمن 1395, 14:04 عصر
با سلام به همه دوستان برنامه نویس
سورس برنامه رو توی پست اول قرار دادم تا هرکسی دوست داشت بتون توسعش بده و استفاده کنه.
با سپاس
ادریسیان

saeidghadiri
شنبه 21 اسفند 1395, 14:03 عصر
سلام آقا مصطفی عزیز، ممنون بخاطر این کامپوننت.
نمونه برنامه ای داری توش این فیلد باشه که تو sql ذخیره شه حقیقش اینه که من اینو بلد نیستم

aria62
یک شنبه 22 اسفند 1395, 15:07 عصر
سلام
چند سال پیش توی یکی از پروژه هام بابت احتیاجی که داشتم کنترل DateTimePicker نوشتم و اون رو برای استفاده دیگر دوستان توی سایت هم قرار دادم(اینجا (http://barnamenevis.org/showthread.php?119525-%DA%A9%D9%88%D9%85%D9%BE%D9%88%D9%86%D9%86%D8%AA-%D8%AC%D8%AF%DB%8C%D8%AF-DateTimePicker-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C)). که خوب یا بد مورد توجه برخی از دوستان برنامه نویس قرار گرفت. در طی این مدت دوستان زیادی لطف داشتن و از طریق ایمیل و یا پیغام خصوصی درخواست داشتن که ورژن جدیدی از این کنترل رو بنویسم که متاسفانه علارقم میل باطنی خودم و به علت مشغله زیاد فرصت کار کردن روش رو به صورت کامل نداشتم ولی هر از چند گاهی که سرم خلوت تر میشد روش کار میکردم.( که هنوز از نظر من تکمیل نیست).
با این حال خوب یا بد اینجا قرارش میدم تا دوستان تستش کنن و اگه اشگالی داشت بهم اطلاع بدن تا برطرفش کنم.
properties
Format: برای تغیر فرمت نمایش از کوتاه "1/1/90" به بلند " چهارشنبه، 26 بهمن ، 1390"
GregorianDate: تاریخ معادل میلادی روز انتخاب شده
MaxDate
MinDate
Value: تاریخ شمسی به صورت String و با فرمت "yyyy/MM/dd"
Events
FormatChanged
ValueChanged
ButtonClick
Classes
توی Name Space کنترل هم یک کلاس به اسم PerCalendar هستش که برای تبدیل انواع تاریخ بین شمسی و میلادی میتونید ازش استفاده کنید.
آپدیت :1390/11/30
کنترل Persian Month Calendar هم ب Library فوق اضافه شد.
آپدیت : 1390/12/3
برخی از باگها بر طرف شد. ( رفع مشکل نشان دادن ضربدر قرمز در هنگام بروز خطا)
آپدیت : 1391/04/04
اضافه شدن Month calendar
قابلیت ست کردن تاریخ به صورت میلادی از طریق پراپرتی GregorianDate
...
88685
1395/11/07 سورس برنامه
طبق درخواست خیلی از دوستان برنامه نویس سورس این برنامه رو اینجا قرار میدم
144291

درود بر شما. عالی بود. دستت درد نکنه mostafaaa جان. خیلی کارم جلو افتاد. موفق باشی

samiasoft
دوشنبه 07 فروردین 1396, 23:17 عصر
سلام

من تاریخ امروز رو بوسیله دستور زیر از کمبوباکس DateTimePicker بدست می آورم :

TextBox1.Text = Date1.SelectedDateInStringPersian
حال چگونه تاریخ روز فردا رو بدست بیاریم؟

oveshli64
پنج شنبه 15 تیر 1396, 23:35 عصر
بسیار عالی بود - متشکرم

oveshli64
پنج شنبه 15 تیر 1396, 23:45 عصر
سلام -

Dim Shamsi As New Globalization.PersianCalendar
TextBox1.Text = Shamsi.GetYear(Now) & "/" & Shamsi.GetMonth(Now) & "/" & Shamsi.GetDayOfMonth(Now) + 1

oveshli64
پنج شنبه 15 تیر 1396, 23:46 عصر
سلام

من تاریخ امروز رو بوسیله دستور زیر از کمبوباکس DateTimePicker بدست می آورم :

TextBox1.Text = Date1.SelectedDateInStringPersian
حال چگونه تاریخ روز فردا رو بدست بیاریم؟

Dim Shamsi As New Globalization.PersianCalendar
TextBox1.Text = Shamsi.GetYear(Now) & "/" & Shamsi.GetMonth(Now) & "/" & Shamsi.GetDayOfMonth(Now) + 1

علیرضاقانونی
دوشنبه 20 اردیبهشت 1400, 17:57 عصر
سلام داداش محبت کن سورس سالم این کامپونت را برام بفرست alirezaganooni@yahoo.com