تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[C#.NET] مناداه method موجودة في ال user control من ال main form
#1
السلام عليكم 

عندي main from بداخلة container اقوم بعرض user control بداخلة 
ولدي عدة buttons لعرض user control مختلفة 

اقوم بعرضها بهذا الكود :
PHP كود :
if (!Container1.Controls.Contains(invoices.Instance))
 
           {
 
               Container1.Controls.Add(invoices.Instance);
 
               invoices.Instance.Dock System.Windows.Forms.DockStyle.Fill;
 
               invoices.Instance.BringToFront();
 
           }
 
           invoices.Instance.BringToFront(); 
كيف استطيع مناداة method خاصة بعمل refresh لل datagridview  موجودة بال user control عند عرض ال user control من ال
button الموجود في ال main form .

الملخص اريد مناداه method موجودة في ال user control من ال main form .


الرد
تم الشكر بواسطة:
#2
nor answers ??
الرد
تم الشكر بواسطة:
#3
السلام عليكم
ارسل المثال من اللى حضرتك شغال عليه علشان تسهل على باقى الاعضاء الرد عليك
الرد
تم الشكر بواسطة: Rabeea Qbaha , Rabeea Qbaha
#4
مناداه method موجودة في ال user control من ال main form
إجعل الmothod من نوع public لتراه بعد كتابة اسم user control في ال main form
الرد
تم الشكر بواسطة: Rabeea Qbaha
#5
(16-03-19, 12:24 PM)WAEL ABED كتب : السلام عليكم
ارسل المثال من اللى حضرتك شغال عليه علشان تسهل على باقى الاعضاء الرد عليك

لا حاجة للمثال صديقي، فالمطلوب واضح.


فقط اريد استدعاء method موجودة في ال usercontrol من داخل الفورم الاساسي.

الكمشروع لزبون لا استطيع مشاركته.

(16-03-19, 03:20 PM)5000 كتب : مناداه method موجودة في ال user control من ال main form
إجعل الmothod من نوع public لتراه بعد كتابة اسم user control في ال main form

لا تعمل هذه الطريقه يجب ان تكون الmothod من نوع static 
و اريد استدعاء ميثود تحتوي على اتصال بقاعدة البيانات ولا يمكن ان تكون  static.
الرد
تم الشكر بواسطة:
#6
بامكانك إضافة public قبل كلمة static
الرد
تم الشكر بواسطة:
#7
(16-03-19, 08:16 PM)5000 كتب : بامكانك إضافة public قبل كلمة static

نعم اعرف هذا صديقي ، القصد ان ال static يقوم باظهار اخطاء في الاتصال بقاعدة البيانات
الرد
تم الشكر بواسطة:
#8
أحتاج لرؤية جميع الأكواد والافضل أن تعمل مثال مصغر لمعرفة الطريقة المناسبة لك
الرد
تم الشكر بواسطة:
#9
(16-03-19, 09:11 PM)5000 كتب : أحتاج لرؤية جميع الأكواد والافضل أن تعمل مثال مصغر لمعرفة الطريقة المناسبة لك

لا يوجد أكواد كثيرة صديقي ، يوجد ميثود ()showGV لعرض البيانات في ال gridview 
ال gridview موجودة في usercontrol اريد ان استدعي ال ميثود ()showGV عند التنقل بين ال usercontrols
من الصفحة الرئيسية.
الرد
تم الشكر بواسطة:
#10
أنا عملت مشروع جديد وأنشأت فيه UserControl ووضعت فيه أداة DataGridView وميثود showGV فيه الكود التالي

هذا كود userControl1

using System;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class UserControl1 : UserControl
    {
        public UserControl1() {
            InitializeComponent();
        }

        private void UserControl1_Load(object sender, EventArgs e) {
            dataGridView1.Columns.Clear();
            dataGridView1.Columns.Add(new DataGridViewTextBoxColumn());
        }

        public void showGV(){
            for (int i = 0; i < 10; i++) {
                dataGridView1.Rows.Add(i.ToString());
            }
        }

    }
}



ثم عمل Build

في الفورم أضفت أداة UserControl وأصبح إسمه userControl11
لاحظ أن الإسم نهايته 11 لأن اسم الأداة في صندوق الأدوات userControl1 برقم واحد

ثم أضفت button وكتبت فيه
userControl11.showGV();

هذا كود الفورم
using System;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1() {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e) {
            userControl11.showGV();
        }

    }
}


وقد تم تنفيذ الmothod وتعبئة الداتاجريد
الرد
تم الشكر بواسطة: محمد كريّم , Rabeea Qbaha



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم