PDA

View Full Version : نحوه ارسال متغیر از یک فرم به یوزر کنترل ساخته شده



unforgiven
پنج شنبه 17 اردیبهشت 1394, 15:22 عصر
سلام به همگی
دوستان من ی تقویم در فرمم ساختم و با کنترل masktextbox هم یک یوز کنترل برای درج تاریخ ساختم . وقتی روی دکمه کنار مسک تکست باکس برای نمایش تقویم کلیک میکنم . فرم تقویم باز میکنه و من تاریخ رو انتخاب میکنم و به صورت رشته نگه میدارم . حالا میخوام این رشته رو به یوزر کنترلی که ساختم ارسال کنم ولی نمیدونم چطوری باید این متغیر رو به یوزر کنترل پاس بدم .

لطفا راهنمایی بفرمایید .
پیشاپیش متشکرم

unforgiven
جمعه 18 اردیبهشت 1394, 18:45 عصر
با ساخت یک پراپرتی در یوزر کنترل masktextbox تونستم تاریخ رو از فرم تقویم در masktext box درج کنم . اما مشکل اینجاست وقتی روی فرم تقویم ,روز مورد نظر رو انتخاب میکنم و فرم تقویم بسته میشه چیزی در مسک درج نمیشه اما وقتی دوباره فرم تقویم باز میشه تاریخی که انتخاب کردم درج میشه .

مشکل از چی هست ؟
لطفا راهنمایی کنید .

محمد آشتیانی
شنبه 19 اردیبهشت 1394, 01:16 صبح
سلام
ای کاش لااقل بخشی از کد و یا حتی یک نمونه برنامه کوچیک اینجا میذاشتی تا راهنمایی خوبی بگیری.
با این حال ، شما موقعی که به پراپرتی یوزر کنترلت از طریق فرم تقویم مقدار میدی ، چطوری داری تو قسمت set اون پراپرتی، مقدار Text یوزر کنترلت رو ست میکنی؟

یعنی همچین حالتی

Private _myText As String
Public Property MyText() As String
Get
Return _myText
End Get
Set(ByVal value As String)
_myText = value
MaskedTextBox1.Text = _myText 'inja text controle khodet ro meghdar dehi mikoni
End Set
End Property

unforgiven
شنبه 19 اردیبهشت 1394, 16:48 عصر
سلام و ممنون از پاسختون
من پراپرتی رو درست کردم و به کنترل مسک اضافه میشه اما بازم پراپرتی Mytext رو موقع ارسال به یوزر کنترل نمیتونم مقدار دهی کنم .

من کد نمونه رو گذاشتم لطفا اصلاحش کنید .
متشکرم

محمد آشتیانی
شنبه 19 اردیبهشت 1394, 19:28 عصر
سلام
این مدل یوزر کنترل نوشتن صحیح نیست البته ، اما به هر حال الان کار میکنه


موفق باشید

unforgiven
شنبه 19 اردیبهشت 1394, 20:09 عصر
جناب آشتیانی متشکرم .
حق با شماست . فورس ماژور نیاز بود و البته من در دات نت تازه کار هستم .
بازم از توجهی که به پستم داشتید متشکرم

unforgiven
یک شنبه 20 اردیبهشت 1394, 12:44 عصر
سلام مجدد
ی سوال دیگه دارم استاد
من کد باز کردن تقویم رو از showdialog به صورت معمولي تغيير دادم . اما دیگه تاریخ رو ارسال نمیکنه .


Dim dlg As New FrmCalendar()
dlg.Show()
MaskTxt = dlg.DateValue

مشکل از چی هست ؟
متشکرم

محمد آشتیانی
یک شنبه 20 اردیبهشت 1394, 20:37 عصر
سلام
وقتی شما یک فرم رو بصورت show dialog نمایش میدی ، اون فرم موقع بسته شدن یه مقداری ( dialog result مثل yes, no, ok,cancel ) بعنوان نتیجه به فراخوانی کننده اون فرم برمیگردونه ، اگر توجه کرده باشید در یوزر کنترل مقدار dialog result رو چک کردم.
وقتی فرم رو عادی نمایش میدید دیگه dialog result موجود نیست و این اتفاق میفته.
برای استفاده شما فکر میکنم باید بصورت show dialog نمایش بدید تا کاربر مجبور به انتخاب تاریخ یا بستن پنجره باشه.


موفق باشید.

unforgiven
دوشنبه 21 اردیبهشت 1394, 10:36 صبح
سلام


وقتی شما یک فرم رو بصورت show dialog نمایش میدی ، اون فرم موقع بسته شدن یه مقداری ( dialog result مثل yes, no, ok,cancel ) بعنوان نتیجه به فراخوانی کننده اون فرم برمیگردونه ، اگر توجه کرده باشید در یوزر کنترل مقدار dialog result رو چک کردم.
وقتی فرم رو عادی نمایش میدید دیگه dialog result موجود نیست و این اتفاق میفته.

بله متوجه شدم و دیدیم باتن موجود در فرم تقویم هم پراپرتی dialog result تش ok شده بود . به همین صورت استفاده میکنم .
بازم متشکرم از راهنماییتون