PDA

View Full Version : ساختن کنترلي از روي كنترل ديگه در زمان اجرا چطوري



احمد سامعی
دوشنبه 19 اسفند 1387, 14:00 عصر
سلام
من مي خوام نسبت به تعداد فايل عكسي كه كاربر انتخاب مي كنه ImageBox بسازم براي نشون دادن اون عكس ها
تمام ويژگي اون ها بايد مثل هم باشه جزء محل نمايش ؟

چطوري يكي خودم بسازم و بقيه رو از اون كپي كنم

جناب sinpin توي يك تايپيك (http://barnamenevis.org/forum/showpost.php?p=469032)اين جوري گفتن
مثال: یک تکست باکس به فرم اضافه میکند:

کد:


private void button1_Click(object sender, System.EventArgs e)
{
TextBox myText = new TextBox();
myText.Location = new Point(25,25);
this.Controls.Add (myText);
}

اما من مي خوام يكسري از خواص ديگه هم براش تعريف كنم به اضافه يكسري تابع ؟

NewFoxStudent
دوشنبه 19 اسفند 1387, 15:20 عصر
میتونید خواص رو از کنترل اصلی بگیرید



TextBox txt = new TextBox();
txt.BackColor = textBox1.BackColor;

احمد سامعی
دوشنبه 19 اسفند 1387, 17:22 عصر
میتونید خواص رو از کنترل اصلی بگیرید



TextBox txt = new TextBox();
txt.BackColor = textBox1.BackColor;


منون
اما من نمي خوام واسه تك تك كنترل هاي جديد كه ساخته مي شه تمام خواص رو دوباره تعريف كنم، آيا راهي هست كه يكجا خواص كپي كنه ؟ يعني منظورم اينكه بگي اين كنترل كپي قبلي باشه ؟

ariyanna
دوشنبه 19 اسفند 1387, 19:43 عصر
من این تابع رو واستون نوشتم 3 تا ورودی بهش می دین و یک image رو با شماره نام دلخواهتون به یک imageList مشخص با خصوصیات مشخص Add می کنه:

private void Add_To_ImgList(ImageList imglist, int ImgID,Image img)
{
if(ImgID<0)
return;
imglist.Images.Add("ImgCollectionNomber"+ImgID,img);
img.RemovePropertyItem(..);
img.RotateFlip(RotateFlipType ...);
img.Save("...");
img.SetPropertyItem(...);
img.SelectActiveFrame(...);
//And Other Propertieces
}

احمد سامعی
سه شنبه 20 اسفند 1387, 21:50 عصر
من این تابع رو واستون نوشتم 3 تا ورودی بهش می دین و یک image رو با شماره نام دلخواهتون به یک imageList مشخص با خصوصیات مشخص Add می کنه:


منون عزيز اما اين چيزي نيست كه من مي خوام

فرض كنيد يك بانك داريم كه كاربر هر بار تعدادي اسم به اون اضافه مي كنه

حالا هربار كه دوباره برنامه رو دوباره باز مي كنه بايد به تعداد اسامي ذخيره شده در بانك Lable به برنامه اضافه بشه واسه نمايش اسامي ( از DataGrid نمي خوام استفاده كنم )

يا فرض كنيم كاربر مي خواد عكس انتخاب و اديت كنه بايد به تعداد عكسي كه انتخاب مي كنه ImageBox به برنامه اضافه بشه