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

نام تاپیک: دسترسی به خواص یک usercontrol activex از خارج در VB

  1. #1

    Tick دسترسی به خواص یک usercontrol activex از خارج در VB

    من یک user control ساختم که چندتا فرم هم داخل آن قرار دارد ویک کلاس ماژول هم همینطور حالا در یکی از فرمها میخواهم اطلاعات درون usercontrol را نمایش یا تغییر دهم اما نمیدانم چگونه میشود به این مقادیر از بیرون (فرمی در usercontrol) دسترسی پیداکرد؟
    class module name : controlprop
    ...
    :in usercontrol
    dim contp() as new controlp
    ...
    in sh.frm inside usercontrol
    usercontrol.contp
    error?

  2. #2

    Thumbs up

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

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

    Dim FrmNew as New FormCustom
    FrmNew.Show

    FrmNew_CustomEvent()

    Insert Your Code Hear

    End CustomEvent


    اگه واضح نیست بگین تا یه نمونه ساده قرار بدم.



  3. #3
    دوست عزیز با تشکر از لطف شما در پاسخ سریع به سوال من اگر اجازه بدید من مشکلم را دقیقتر بگم شاید راهگشا باشه:
    من یه کنترل و یک فرم داخل اون ساختم که اسم فرم رو ویزاردگذاشتم که روال کار به این شکله که:
    ویزارد یکسری اطلاعات در مورد چند کنترل مثلا: textbox , checkbox , Label و ... از کاربر میگیره بعد اونها رو بهمان شکلی که کاربر تعریف کرده روی یوزر کنترل نمایش میده.
    اطلاعاتی که در فرم ویزارد قرارگرفته را از طریق یک کلاس ماژول(controlprop) که در ماژول عمومی برنامه module1 آنرا بصورت عمومی تعریف کردم قابل دسترسی برای تمام برنامه است: public contp() as new controlprop
    من این اطلاعات را در فرم ویزارد، درون این کلاس که بصورت آرایه ای قابل دستیابی است قرار میدهم و در درون usercontrol بازیابی و استفاده میکنم به این صورت برنامه درست کار میکندو
    البته تمام این آرایه را توسط writeproperties وReadproperties ذخیره و بازیابی میکنم تا اینجا هیچ اشکالی وجود ندارد
    اما مشکل از جایی شروع میشود که ocx حاصله را در یک برنامه استفاده میکنیم ! مشکل اینجاست که اگر روی یک فرم یک کنترل از این نوع قرار دهیم همه چیز صحیح است اما همینکه کنترل دوم از این نوع روی فرم قرار میگیرد این کنترل اطلاعات ویزارد کنترل قبلی را که بصورت عمومی بود گرفته واگر تغییری در اطلاعات ویزارد کنترل دوم بدهیم عینا در کنترل اول هم درج میشود
    بعنوان راه حل من ابتدا سعی کردم نام خواص هر کدام از کنترلها را در writeproperties عوض کنم اما مشکل بازهم حل نشد بعد سعی کردم در داخل هر کدام از اجزاء کنترل (فرم ویزارد و خود یوزرکنترل) یک instance از کلاس ماژول بصورت خصوصی تعریف کنم privare contp() as new controlprop
    اما مشکل اینجاست که چطور بعد از گرفتن اطلاعات از کاربر در فرم ویزارد آنها را به یوزر کنترل منتقل کنم؟ چرا که contp مربوط به یوزرکنترل دیگر از اینجا قابل دسترسی نیست . امیدوارم توانسته باشم مشکل را بخوبی شرح دهم!

  4. #4
    منظورتونو متوجه شده بودم.

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

    من بجای اینکه براتون اینجا توضیحش بدم به نمونه ساده براتون می نویسم و در اسرع وقت اینجا میذارم.
    اینطوری راحت تر و سریعتر راه حل دستون میاد.



  5. #5
    از محبت و لطف شما بینهایت سپاسگذارم و منتظر نمونه برنامه شما هستم

  6. #6
    با لطف و راهنمایی شما تونستم مشکلمو حل کنم بازم ممنون با آرزوی موفقیت برای شما دوست عزیز

  7. #7
    دوست عزیز نمونه حاضره.

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



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

  1. UserControl خوب
    نوشته شده توسط azam2005 در بخش ASP.NET Web Forms
    پاسخ: 6
    آخرین پست: شنبه 02 شهریور 1387, 12:48 عصر
  2. دسترسی به خواص یک usercontrol activex از خارج در VB
    نوشته شده توسط peivand در بخش برنامه نویسی در 6 VB
    پاسخ: 0
    آخرین پست: سه شنبه 06 آذر 1386, 10:46 صبح
  3. ساخت usercontrol که روی فرم قرار نگیره
    نوشته شده توسط once4ever در بخش C#‎‎
    پاسخ: 3
    آخرین پست: جمعه 05 مرداد 1386, 12:56 عصر
  4. مشکل با Usercontrol ها
    نوشته شده توسط mehdi58 در بخش ASP.NET Web Forms
    پاسخ: 7
    آخرین پست: سه شنبه 05 اردیبهشت 1385, 21:36 عصر
  5. UserControl
    نوشته شده توسط yavari در بخش برنامه نویسی در 6 VB
    پاسخ: 1
    آخرین پست: جمعه 04 فروردین 1385, 16:11 عصر

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

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