اضافه کردن کنترل ها با کد در #C
اضافه کردن کنترل ها با کد در #C
فواید این کار این است که میتوان دسترسی بسایر راحت تر و سریع تر بر روی کنترل هایمان داشت و بعلاوه این که برنامه ما زود تر بالا می آید.
برای مثال : Word نیومده دستی هزار تا صفحه بزاره تا شما توش چیزی بنویسید. به صورت اتوماتیک بینهایت تا صفحه میتواند درست کند تا محدود نباشد.
مثلا, اگر ما با کد 100 تا TextBox درست کنیم میتوان در یک Event همه ی آن ها را کنترل کرد ( البته اگر دستی TextBox اضافه کنیم هم میشود اینکار را کرد) و با یک for میتوان به همه ی آن ها دستور داد که تغییری رویشان انجام شود یا هزار کار دیگر بر روی تک تک آن ها.
برای شروع یک TextBox میسازیم، و بعد آرایه ای از آن ها را.
1 | TextBox txt = new TextBox(); |
یک متغیر از نوع TextBox ایجاد شد. کار بعدی ای که باید انجام بدیم اضافه کردن مشخصاتی که میخواهیم این TextBox داشته باشد. یعنی همان مشخصاتی که در پنجره Properties میبینیم. خب بعضی از آن مشخصات به صورت پیش فرض برای این تکس باکسمان هست ولی بعضی را باید خودمان حتما به آن بدیهم. مانند Point و Size.
1 2 | txt.Location = new Point(500,100); txt.Size = new Size(200,y); |
نکته : اینجا به جای y هر عددی بزاریم ارتفاع تکس باکسمان تغییری نخواهد کرد چون به صورت پیش فرض خاصیت Multiline آن flase است پس ما این کد را اضافه میکنیم اگر میخواهیم تکس باکسمان Multiline باشد و در بعضی کنترل ها خاصیت AutioSize.
1 | txt.Multiline = true; |
خب تنها کاری که باید الان انحام دهیم اضافه کردن آن به کنترلی که میخواهیم است که میخواهیم تکس باکسمان روی آن قرار گیرد یعنی به اصتلاح پدرش کدام کنترل باشد.
پس اگر ما حتی تکس باکسمان را بر روی یک دکمه اعمال کنیم, و نقطه 0,0 را بهش بدیم تکس باکسمان روی نقطه 0,0 دکمه میرود.
1 | this.Controls.Add(txt); |
اینجا ما روی فرم اعمال کردیم. اگر this را ننویسیم به صورت پیش فرض یعنی روی فرم اعمال شود.
آرایه ای از TextBox ها :
1 | TextBox[] txt = new TextBox[10]; |
1 2 3 4 5 6 7 8 9 10 11 12 13 | TextBox[] txt = new TextBox[10]; int x = 0; for (int i = 0; i < 10;i++ ) { txt[i] = new TextBox(); txt[i].Location = new Point(x, 10); txt[i].Size = new Size(100, 50); txt[i].BackColor = Color.Black; txt[i].ForeColor = Color.Red; txt[i].Multiline = true; x+=100; this.Controls.Add(txt[i]); } |
اگر این کد زیر را ننویسیم
1 | txt[i] = new TextBox(); |
یک پاسخ به “اضافه کردن کنترل ها با کد در #C”