پرسش و پاسخ
 
* پرسش   HyperLink HyperLink
 
 
     
   
     
   
عنوان پرسش: ساخت Combo Box سفارشی
شرح پرسش: سلام ببخشید چجوری یک Combo Box بسازیم که کاربر بتونه بهش آیتم اضافه-حذف کنه و آیتمها را تغییر بده؟
فایل مرتبط: - - -
لینک مرتبط: - - -
وضعیت سوال: در انتظار پاسخ
 
 
گروه تخصصی: فنی مهندسی > کامپیوتر زمان ثبت سوال: سه‏شنبه، 24 تیر 1393 - 17:58:39 تعداد بازدید: 470 تعداد پاسخ: 22
 
     
 
* پاسخ جدید  
 
 
     
 


 
     
 
پاسخ:  
   
فایل مرتبط: (حد اکثر 4 مگابایت)
لینک مرتبط:
 
 
پیام مدیریت در خصوص درج پاسخها

 
     
 
* مشخصات متخصص جدیدترین  -  قدیمی ترین  - امتیاز
 
 
     
 
0
امتیاز پاسخ
[imgExp]

akram kalantari
د، 04/11/95 - 14:37
 
     
متن پاسخ:

نقل قول
ممنون از راهنماییتون
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
1
امتیاز پاسخ
[imgExp]

علی رضا دودانگه
د، 04/11/95 - 11:34
 
     
متن پاسخ:

نقل قول
سلام

اول ریپورت رو داخل reportViewer ست کنید که داخل اون نشون بده تو یکی از فرم ها.
بعد از دستور زیر برای ارسال استفاده کن.
مثل:
reportViewer1.LocalReport.SetP arameters(new Microsoft.Reporting.WinForms.R eportParameter("Rows" , "20"));
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
0
امتیاز پاسخ
[imgExp]

akram kalantari
د، 04/11/95 - 10:02
 
     
متن پاسخ:

نقل قول
سلام منم اینکاری که شما میگین رو مخام انجام بدم!داخل برنامم یک مقدار که تعداد ردیفای جدولم هست رو میخام بفرستم برا ریپورت-ریپورتمم پارامتر مشخص کردم-تو برنامم هم ایرور نمیده ولی تو اجرا میده مقدارشم خالی فرستاده نمیشه بنظرتمون چرا ایرور میده
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
1
امتیاز پاسخ
[imgExp]

علی رضا دودانگه
ی، 03/11/95 - 10:35
 
     
متن پاسخ:

نقل قول
نقل قول از: akram kalantari (1393/18/15 - 09:18):
سلام ممنون دوستان از راهنماییتون اون مشکلم حل شد!چیزی نبود راهنماییتون درست بود !الان ی مشکلی در استیمالت ریپورت دارم این کد منه
dt = cs.showdata("select IsWorking From CRM_CustomerFollowCalls where Type=0 And IsWorking=2");
Stimulsoft.Report.Components.S tiText NumberNoWork = StiReport.GetComponents()[&quo t;NumberNoWork"] as StiText;
if (dt.Rows.Count > 0)
NumberNoWork.Text = dt.Rows.Count.ToString();
//else
// NumberNoWork.Text = "-";
از خط آخر ایرور میگیره میگه "Object Reference not set to an instan"
نمیخام خالی تو گزارشم تکس باکس بیوفته شما به نظرتون چرا ایرور میده؟


سلام

دق یقان تو
این خط
if (dt.Rows.Count > 0)

یا این خط
NumberNoWork.Text = dt.Rows.Count.ToString();

؟؟؟

اگه مقدوره خط های قبلی رو قرار بدید.

بعد اینکه برنامه رو اجرا میکنید این خطا رو میده یا اینکه خطا ر نشون میده و اجرا نمیکنه؟

___________ _______________________________ _
شما میخواید داخل ریپورت یک مقدار بفرستید؟؟؟
چرا از این روش استفاده میکنید.
از روش Parametr استفاده کنید بهتره.داخل ریپورت یک پارامتر درست میکنید و محل نمایش پارامتر رو داخل ریپورت تنظیم میکنید و از داخل برنامه پارامتر رو مقدار دهی میکنید.
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
0
امتیاز پاسخ
[imgExp]

akram kalantari
ی، 03/11/95 - 09:18
 
     
متن پاسخ:

نقل قول
سلام ممنون دوستان از راهنماییتون اون مشکلم حل شد!چیزی نبود راهنماییتون درست بود !الان ی مشکلی در استیمالت ریپورت دارم این کد منه
dt = cs.showdata("select IsWorking From CRM_CustomerFollowCalls where Type=0 And IsWorking=2");
Stimulsoft.Report.Components.S tiText NumberNoWork = StiReport.GetComponents()[&quo t;NumberNoWork"] as StiText;
if (dt.Rows.Count > 0)
NumberNoWork.Text = dt.Rows.Count.ToString();
//else
// NumberNoWork.Text = "-";
از خط آخر ایرور میگیره میگه "Object Reference not set to an instan"
نمیخام خالی تو گزارشم تکس باکس بیوفته شما به نظرتون چرا ایرور میده؟
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
0
امتیاز پاسخ
[imgExp]

حمید ذبیحی
د، 13/10/95 - 22:40
 
     
متن پاسخ:

نقل قول
سلام
ببخشید من میخوام همه این بحث ها رو زیر سوال ببرم
چرا ComboBox؟ به نظر من به جای اینکه این کدها رو زیر و رو کنین بشنین از اول فکر کنین ببینین که این روش پیاده سازی درسته یا روش ها و کنترل های بهتری هم هست که این واقعا خودش هنر و تجربه میخواد
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
0
امتیاز پاسخ
[imgExp]

akram kalantari
ی، 12/10/95 - 21:55
 
     
متن پاسخ:

نقل قول
باید ببینم تحلیلش درست میشه میتونم استفاده کنم یا نه!الان ی مورد دیگه ای هس اونو درست کنم میگم
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
0
امتیاز پاسخ
[imgExp]

علی رضا دودانگه
ی، 12/10/95 - 18:03
 
     
متن پاسخ:

نقل قول
نقل قول از: akram kalantari (1393/14/25 - 16:14):
اصلا ی سوال برام پیشومد!اینکاری که من میخام انجام بدم یعنی همه ی کارها فقط تو این کامبو باکس انجام بشه امکان داره؟!!


خوب نمیدونم دقیقان چی میخواید ولی بله امکان پذیر هست.
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
1
امتیاز پاسخ
[imgExp]

علی رضا دودانگه
ی، 12/10/95 - 18:02
 
     
متن پاسخ:

نقل قول
نقل قول از: akram kalantari (1393/08/25 - 16:08):
خب من نمیخام اطلاعات رو از تکست باکس دیگه ای بگیره!تو همین Combo Box آیتمشو تغییربده یا حذف کنه
اشتباهه؟چجوری باید باشه؟


خوب شما کدی که نوشتید اشتباه هست فقط همون بخشی که واسه آپدیت نوشتید.باید تغیرش بدید تا با همون کامبو باکس اطلاعات رو دریافت کنه.
برای این کار هم باید کد بیشتری تو ایونت های بیشتری نوشته بشه.

ولی اگه میخواید فقط تغیر پیدا کنه بهترین روش و ساده ترین روش این هست که از همون تکست باکس اضافه استفاده بشه.


اشتباه بودن کد آپدیت شما هم بخاطر این هست که وقتی شما داخل کامبو باکس چیزی دستی وارد میکنید نمیتونید از اون کد استفاده کنید باید شماره ایتمی که داره تغیر میکنه از روشی خاص دیگه استفاده بشه که چند تا کار باید انجام بشه.

حالا از همون روش اول (تکست باک اضافه )استفاده میکنید؟
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
0
امتیاز پاسخ
[imgExp]

یونس بیات
ی، 12/10/95 - 17:56
 
     
متن پاسخ:

نقل قول
با سلام خدمت دوستان
در برنامه نویسی کار نشد نداره و باید بگم ابتدا خاصیت enable کنترول combo باید فعال باشه و طوری کد نویسی کنید که دستور ثبت در قسمت فشردن کلید اینتر و دستور تازه سازی در قسمت رها کردن کلید اینتر و دستور حذف در قسمت موس کلیک نوشته شود. و در غیر این صورت حق با آقای دودانگه هست ایشون منطقی گفتنند برنامه شما عجیب است
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
0
امتیاز پاسخ
[imgExp]

akram kalantari
ی، 12/10/95 - 16:14
 
     
متن پاسخ:

نقل قول
اصلا ی سوال برام پیشومد!اینکاری که من میخام انجام بدم یعنی همه ی کارها فقط تو این کامبو باکس انجام بشه امکان داره؟!!
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
0
امتیاز پاسخ
[imgExp]

akram kalantari
ی، 12/10/95 - 16:08
 
     
متن پاسخ:

نقل قول
خب من نمیخام اطلاعات رو از تکست باکس دیگه ای بگیره!تو همین Combo Box آیتمشو تغییربده یا حذف کنه
اشتباهه؟چجوری باید باشه؟
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
1
امتیاز پاسخ
[imgExp]

علی رضا دودانگه
ی، 12/10/95 - 15:47
 
     
متن پاسخ:

نقل قول
نقل قول از: akram kalantari (1393/41/25 - 13:41):
... ...



ببخشید میشه یه جور دیگه توضیح بدید.

یعنی چی از حالت انتخاب در میاد و تکست معمولی هست؟

این کدی که نوشتید اشتباه هست.

txtRadifFareiO ther1.Items[txtR adifFareiOther1.SelectedIndex] = txtRadifFareiOther1.Text;
txtRadifFareiOther1.Text = "";


____________ _________________
برای حل این مشکل باید به جای این txtRadifFareiOther1.Text یک تکست باکس دیگه تعریف کنید و مقدار رو از داخل اون تکست بخونید و قرارر بدید.
مثل:
اسم اون تکست باک اضافه رو من قرار میدم textBox1 که در نهایت میشه.

txtRadifFarei Other1.Items[txtRadifFareiOther 1.SelectedIndex] = textBox1.Text;
textBox1.Text = "";


که برای بهتر شدن کارایی برنامتون بایید چند دستور دیگه بنویسید که بعد اینه کاربر از کامبو باکس چیزی رو انتخاب کرد مقدار متنی اون داخل تکست قرارا بگیره و با زدن یک دکمه مقدار اون تکست به جای اون مقدار انتخاب شده قرار بگیره.

پس یک دکمه دیگه قرارا بدید با عنوان ویرایش و داخل کلیک اون کد زیر رو بنویسید.(البته هر جایی که بخواید میتونید این کد رو استفاده کنید)
(همون کد بالا هست.)

txtRadifFarei Other1.Items[txtRadifFareiOther 1.SelectedIndex] = textBox1.Text;
textBox1.Text = "";


بعد داخل رویداد SelectedIndexChanged کامبو باکستون این تکه کد رو قرارا بدید.


textBox1.Text = txtRadifFareiOther1.Text;



امیدوارم منظورتون رو فهمیده باشم.
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
0
امتیاز پاسخ
[imgExp]

akram kalantari
ی، 12/10/95 - 13:41
 
     
متن پاسخ:

نقل قول
مشکلم اینه اگر یک آیتمیو انتخاب کنه و تغییر بده چون از حالته انتخاب درمیاد دیگه ی تکسته معمولیه که بعد میاد اضافه میکنه چجوری جایگزین کنیم؟؟
if (e.KeyCode == Keys.Enter)
{
if (txtRadifFareiOther1.SelectedI ndex <= 0)
{

txtRadifFareiOther1.Items.Add( txtRadifFareiOther1.Text);
txtRadifFareiOther1.Text = "";
}

if (txtRadifFareiOther1.SelectedI ndex > 0)
{
if (e.KeyData == Keys.Delete)
{
txtRadifFareiOther1.Items.Remo ve(txtRadifFareiOther1.Selected Index);
}


if (txtRadifFareiOther1.Text != "")
{
txtRadifFareiOther1.Items[txtR adifFareiOther1.SelectedIndex] = txtRadifFareiOther1.Text;
txtRadifFareiOther1.Text = "";
}
else
{
txtRadifFareiOther1.Items.Remo ve(txtRadifFareiOther1.Selected Index);
txtRadifFareiOther1.Text = "";
}
}
}
لینک مرتبط:
فایل مرتبط:
- - -
- - -
     
 
0
امتیاز پاسخ
[imgExp]

علی رضا دودانگه
ی، 12/10/95 - 09:18
 
     
متن پاسخ:

نقل قول
نقل قول از: akram kalantari (1393/01/25 - 02:01):
نشد درست کنم!کمک لازم داااااااارم!!!


سلام

نم ونه کدتون رو قرار بدید تا مشکل رو برسی کنیم.
لینک مرتبط:
فایل مرتبط:
- - -
- - -


 
     
کلیه حقوق متعلق به مرجع متخصصین ایران می باشد.
Protected under Iranian Copyright laws - (C) 1999-2019 irexperts.ir - Privacy Policy (in Persian)