PDA

View Full Version : ایونت از طرف کدم uc فراخوانده شده



Sal_64
دوشنبه 01 آبان 1391, 00:11 صبح
سلام - چطور میشه مشخص کرد که ایونت از طرف کدام uc فراخوان شده؟ لطفا فایل ضمیمه ببینید- تشکر

Sal_64
دوشنبه 01 آبان 1391, 13:42 عصر
همچنان مشتاقانه منتظر راهنماییهای دوستان هستم

s3unit
دوشنبه 01 آبان 1391, 14:49 عصر
برنامتون رو تغییر کوچک دادم تا مفهومش دستت بیاد

Sal_64
دوشنبه 01 آبان 1391, 16:43 عصر
سلام- تشکر-کد شما دیدم- جالب بود- بیشتر توضیح میدم : من میخوام که برنامه متوجه بشه الان این فعل و انفعال در کدوم uc انجام شده - برای اشیا دیگه مثل باتم و ... بوسیله دسترسی به والد (parent) اونها میشه متوجه شد که از کدوم uc بوده ، اما برای form خیر!!

hamid.karimy
دوشنبه 01 آبان 1391, 17:17 عصر
ببین شما داخل کد یوزر کنترلتون می تونید نام یوزرکنترلتون رو با this.Name ببینید حالا به وسیله این می توانید یک static property که توی فرم یکت ساختی رو مقدار دهی کنی ویژگیهای دیگه ای هم هست که میشه مقدار دهی کرد اما نام بهتره ز همه و یونیک هم هست کاملا.کد رو ببین

Sal_64
دوشنبه 01 آبان 1391, 19:22 عصر
سلام -تشکر- کد شما دیدم - ببنید این uc قراره در چندین فرم قرار داده بشه - تصور نمیکنم این کد بتونه اونجا هم جوابگو باشه - بازم تشکر

morteza271
دوشنبه 01 آبان 1391, 20:59 عصر
سلام. دوست عزیز با توجه به توضحات شما و نمونه کدی که گذاشتین پاسخ آقای Karimy باید درست باشه یا نه؟؟؟

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

Sal_64
دوشنبه 01 آبان 1391, 22:34 عصر
سلام -ببینید مثلا برای تکست باکس داریم TextBox mtb = sender as TextBox; و همینطور string parent = mtb.Parent.Name.ToString(); و اینشکلی میشه متوجه شد که این تکست باکس مربوط به کدوم uc اما برای فرم نمیشه از این کد استفاده کرد- امیدوارم توضیحات کامل بوده باشه - به نظر شما چه باید کرد؟؟ تشکر

morteza271
دوشنبه 01 آبان 1391, 22:49 عصر
متاسفانه باید بگم بازم درست متوجه نشدم!!!!!!!!!!

شما میخواین پدر فرم رو بدست بیارین؟ یا پدر UserControl رو؟

Sal_64
سه شنبه 02 آبان 1391, 09:38 صبح
سلام-پدر فرم که همون uc مورد نظر میشه

morteza271
سه شنبه 02 آبان 1391, 09:57 صبح
سلام-پدر فرم که همون uc مورد نظر میشه

نه دوست عزیز.
پدر uc میشه فرم!!! شما برعکس گفتین!!!

به هر حال من که هنوز متوجه نشدم شما چی میخواین و دقیقا مشکلتون چیه؟؟
جواب آقای Karimy مناسب نیست؟چه مشکلی داره؟؟

Sal_64
سه شنبه 02 آبان 1391, 13:06 عصر
سلام-ممنون از پیگیریتون- منظور از فرم همون ff که با زدن باتم داخل uc باز میشه - کد ایشون مختص فرمی با نام form1 ولی خب uc در چندیم فرم قراره استفاده بشه- تشکر

morteza271
سه شنبه 02 آبان 1391, 13:32 عصر
اگه درست متوجه شده باشم چی میخواین این کار رو بکنید:
1- یه کلاس به پروژتون اضافه کنید با مثلا نام : Parameters
2- بعد داخل این کلاس یه متغیر تعریف کنید به صورت زیر :
public static string UserControlsName { get; set; }
همون متغیری که دوستمون گذاشته بودن.
3- بعد در اول رویداد کلیک کلید در uc کد زیر رو بنویس :
Parameters.UserControlsName = this.Name;
حالا در هر جای پروژه که از این uc استفاده بشه و کلید توش رو کلیک کنید نام همون uc در داخل این متغیر هست و می تونید بهش دسترسی داشته باشین.
متوجه شدین؟؟؟
موفق باشید