PDA

View Full Version : check comboBox control



mehrdad3214
شنبه 18 فروردین 1386, 03:46 صبح
سلام دوستان
من یک کنترل comboBox می خواستم که شامل checkBox هم باشه ؟
اصلا چه جوری این کار رو بکنم ؟
کد های سایت CodeProject رو دیدم ولی به زبان #C نیست ! یکی هم هست که ...
ممنون می شم اگه کمکم کنید.

اَرژنگ
شنبه 18 فروردین 1386, 04:17 صبح
سلام دوستان
من یک کنترل comboBox می خواستم که شامل checkBox هم باشه ؟
اصلا چه جوری این کار رو بکنم ؟
کد های سایت CodeProject رو دیدم ولی به زبان #C نیست ! یکی هم هست که ...
ممنون می شم اگه کمکم کنید.
اگر یکمی توضیح بدید چه کار میخواهید انجام بدید؟ کمبو باکسی که چک باکس داشته باشه را اصلاْ چطوری میشه استفاده کرد؟
یک لینک هم به چیزهایه که در کد پروژکت پیدا کردید بفرستید شاید در فهمیدن مشکل شما به ما کمک کند.

SYSMAN
شنبه 18 فروردین 1386, 11:57 صبح
یک سر به اینجا بزنید.
http://www.codeproject.com/cs/miscctrl/customcombos.asp

http://www.codeproject.com/cs/miscctrl/customcombos/checkcombo.gif

mehrdad3214
یک شنبه 19 فروردین 1386, 03:07 صبح
سلام
ممنونم از اینکه وقت گذاشتید
من این کد رو که SYSMAN آدرس داده بود رو دیدم . و ممنونم .
ولی من می خواستم بدونم چطوری می شه بدون ساختن یک ComboBox جدید
( منظورم http://www.codeproject.com/cs/miscctrl/customcombos.asp )
بتونم از طریق OverWrite کردن توابع ComboBox یک CheckBox برای هر ردیف اضافه کنم . که بتونم Multi Selection هم داشته باشم .

mehrdad3214
یک شنبه 19 فروردین 1386, 20:54 عصر
سلام دوستان
من به شدت نیازمند این کنترل هستم
واقعا ممنون می شم کمکم کنید

SYSMAN
سه شنبه 21 فروردین 1386, 02:10 صبح
یک مقداری بیشتر توضیح بدهید شاید کمک بهتری از دستمون بر بیاد.

mehrdad3214
سه شنبه 21 فروردین 1386, 18:01 عصر
نگاه کنید من می خوام یک Custom Control درست کنم به این شکل که :
یک Combo Box که وقتی آیتمی به آن Add می کنیم . یک CheckBox برای آن آیتم اضافه شود .
و زمانی که قرار است از این کنترل استفاده کنم بتونم چند انتخاب را با هم Check کنم .

mehrdad3214
چهارشنبه 22 فروردین 1386, 22:03 عصر
سلام
دوستان من خیلی نیازمند این کنترل هستم .
یعنی کسی نیست یکمی بتونه راهنمایی کنه !؟

اَرژنگ
پنج شنبه 23 فروردین 1386, 06:56 صبح
سلام
دوستان من خیلی نیازمند این کنترل هستم .
یعنی کسی نیست یکمی بتونه راهنمایی کنه !؟

مشکل این است که چیزی که میخواهید زمان و وقت میبره، اگر کسی مثال این کمپوننت را دیده بود و یا داشت به احتمال زیاد در اختیارتان میگذاشت.
من بعد از ۱۰ سال برنامه نویسی برایه اولین بار است که اصلاً وجود این کمپوننت را شنیدم.
اگر این درخاوستتان را بعنوان کار اعلام کنید، کسانی هستند که انجام بدند، ولی مقدار خصوصیتهایی که برایه کمک درخواست کردید زمان و وقت میبره که به احتمال زیاد طبیعتاً مجانی نیست.

Alireza_Salehi
پنج شنبه 23 فروردین 1386, 08:12 صبح
اینی که میخوای یه کم کمیابه - البته یه ذره بیشتر از یه کم:

کد های ++VC یا VB6 هست اما دات نتش رو من تا حالا ندیدم!
http://www.codeproject.com/combobox/checkcombo.asp
http://www.codeproject.com/combobox/multicombo.asp

همون طور که آرژنگ گفت زمان و وقت میبره.

PC2st
پنج شنبه 23 فروردین 1386, 18:47 عصر
مثلا میشه از کلاس ComboBox به شکل زیر به ارث برد:


public class hell : ComboBox
{
Form frm = new Form();
CheckedListBox chk = new CheckedListBox();
bool shown = false;

public hell(Form vvv)
{
frm = vvv;
chk.CheckOnClick = true;
chk.Visible = false;
chk.Location = new Point(this.Left, this.Top + this.Height);
chk.Width = this.Width;
chk.Items.AddRange(new string[] { "AAA", "BBB", "CCC", "DDD", "EEE", "FFF", "GGG", "HHH" });
frm.Controls.Add(chk);
chk.Leave += new EventHandler(chk_Leave);
}

void chk_Leave(object sender, EventArgs e)
{
chk.Visible = false;
}

protected override void OnDropDown(EventArgs e)
{
if (!shown)
{
chk.Visible = true;
chk.Focus();
shown = true;
}
else
{
shown = false;
}
}
}


بعدش به شکل زیر ازش استفاده کرد:


this.Controls.Add(new hell(this));


this همون نمونه ساخته شده از فرم هست.

کدهای بالا اصلا برای استفاده خوب نیست و قطعا روشی بهتر از روش فوق هم خواهد بود. ولی بهرحال گفتم اینجا به عنوان یک نمونه خیلی کوچولو بگذارمش شاید بدرد کسی خورد (!)

mehrdad3214
پنج شنبه 23 فروردین 1386, 22:44 عصر
مرسی
ممنون
واقعا دست همتون درد نکنه