نمایش نتایج 1 تا 4 از 4

نام تاپیک: راهنمایی در موردUserControl در سی شارپ

  1. #1

    راهنمایی در موردUserControl در سی شارپ

    سلام به همه اساتید گرامی

    دوستان من یه ImageButton با استفاده از UserControl در سی شارپ طراحی کرده ام که روی این دکمه یه PictureBox و دو تا لیبل موجود هست من رویداد کلیک این کنترل ها رو با رویداد کلیک UserControl م برابر کردم ، بعد الان من از این UserControl تو فرمم استفاده کرده ام و تو رویداد کلیک یه MessageBox نوشتم زمانی که رو خود UserControl کلیک می کنم پیغام رو نشون میده ولی وقتی رو آیکن و یا رو لیبل هاش کلیک میکنم پیغام رو نشون نمیده من میخام هرجا از UserControl رو کلیک کردم پیغام رو بهم نشون بده ممنون میشم راهنمایی بفرمایید

  2. #2

    نقل قول: راهنمایی در موردUserControl در سی شارپ

    نقل قول نوشته شده توسط arastoahmadi مشاهده تاپیک
    سلام به همه اساتید گرامی

    دوستان من یه ImageButton با استفاده از UserControl در سی شارپ طراحی کرده ام که روی این دکمه یه PictureBox و دو تا لیبل موجود هست من رویداد کلیک این کنترل ها رو با رویداد کلیک UserControl م برابر کردم ، بعد الان من از این UserControl تو فرمم استفاده کرده ام و تو رویداد کلیک یه MessageBox نوشتم زمانی که رو خود UserControl کلیک می کنم پیغام رو نشون میده ولی وقتی رو آیکن و یا رو لیبل هاش کلیک میکنم پیغام رو نشون نمیده من میخام هرجا از UserControl رو کلیک کردم پیغام رو بهم نشون بده ممنون میشم راهنمایی بفرمایید
    ترفند هایی هست، مثلا اگر شما یک کنترل (مثلا Label) رو با Enabled=false روی UserControl تون قرار بدهید، به اصطلاح Hit Test موفقیت آمیز نخواهد داشت و رخداد کلیک نمیگیره و در نتیجه UserControl زیر اون Label کلیک رو دریافت می کنه. پس اگر اون کنترل های روی UserControl تون Enabled شون false باشه، رخداد Click برای UserControl تون بدون مشکل ایجاد میشه.
    در غیر اینصورت اگر بخواهید می توانید رخداد کلیک یا هر رخداد دیگری رو در UserControl تون بصورت دستی ایجاد کنید. هر رخدادی رو که خواستید فراخوانی کنید یک On قبلش اضافه کنید، میشه اسم یک متد که اون رخداد رو فراخوانی می کنه، مثلا اگر بخواهید رخداد Click در UserControl ایجاد بشه، متد OnClick اون UserControl رو فراخوانی کنید.

    مثلا در UserControl تون کدی بنویسید که موقع کلیک کردن روی آیکون (که نمیدونم چه نوع کنترلی برایش بکار برده اید) و روی Label ها و ... رخداد های کلاس UserControl رو Invoke کنه :

    private void label1_Click(object sender, EventArgs e)
    {
    OnClick(e);
    }

    private void pictureBox1_Click(object sender, EventArgs e)
    {
    OnClick(e);
    }

    شاید لازمتون نباشه اما اگر بخواهید بجز Click رخداد های دیگری مثل MouseMove رو با دقت بکار ببرید، باید در نظر بگیرید که Label موقعیت ماوس رو نسبت به خودش میسنجه، نه UserControl. پس درستش اینه که موقعیت نسبی ماوس رو که نسبت به Label سنجیده شده به نسبت UserControl تبدیل کنید تا توسط UserControl موقعیت ماوس اشتباهی اعلام نشه :

    private void label1_MouseMove(object sender, MouseEventArgs e)
    {
    var pos = PointToClient(label1.PointToScreen(e.Location));
    OnMouseMove(new MouseEventArgs(e.Button, e.Clicks, pos.X, pos.Y, e.Delta));
    }

  3. #3
    کاربر دائمی آواتار mmbguide
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    منظومه شمسی
    پست
    1,255

    نقل قول: راهنمایی در موردUserControl در سی شارپ

    سلام

    یه راه دیکه هم اینه که Event تعریف کنید. البته هر چندتا که لازم دارید. و این کار کمک میکنه که EndUser میتونه مثل سایر رویدادهای یک کنترل بره و برای اون رویداد کد دلخواه خودش رو بنویسه. مثلا شما میتونید یک Event تعریف کنید با نام ClickOnIcon و کاربر هم در زمان کار با اون کنترل در بین تمام رویدادهای کنترل یک رویداد با نام ClickOnIcon خواهد داست که میتونه برای خودش کدهای مورد نیازشو بنویسه.

  4. #4

    نقل قول: راهنمایی در موردUserControl در سی شارپ

    با سلام و احترام

    دوستان بسیار سپاسگذارم از پاسختون خیلی کمک کردین واقعا عالی بود

تاپیک های مشابه

  1. سوال: مشکل در استفاده از UserControl...راهنمایی کنید لطفا
    نوشته شده توسط Behnam6670 در بخش ASP.NET Web Forms
    پاسخ: 3
    آخرین پست: دوشنبه 07 مهر 1393, 14:09 عصر
  2. سوال: دسترسی و تغییر یک usercontrol از طریق یک usercontrol دیگر
    نوشته شده توسط hamidhws در بخش Silverlight
    پاسخ: 6
    آخرین پست: چهارشنبه 13 شهریور 1392, 01:41 صبح
  3. جابه جایی UserControl روی فرم
    نوشته شده توسط PetekDincos در بخش WPF
    پاسخ: 2
    آخرین پست: سه شنبه 21 دی 1389, 08:35 صبح
  4. راهنمایی ارتباط شی و usercontrol
    نوشته شده توسط silverman_200 در بخش C#‎‎
    پاسخ: 1
    آخرین پست: سه شنبه 24 شهریور 1388, 13:56 عصر
  5. مشکل با UserControl هایی که زمان اجرا به فرم اضافه میشن
    نوشته شده توسط mehdi58 در بخش ASP.NET Web Forms
    پاسخ: 0
    آخرین پست: جمعه 13 مرداد 1385, 22:11 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •