PDA

View Full Version : سوال: انتقال اطلاعات از یک فرم به فرم دیگر و پرینت گرفتن از آن



aisana
یک شنبه 08 اسفند 1389, 10:07 صبح
سلام
من افرم فاکتور فروش دارم که کلی textbox داره می خوام وقتی اپراتور روی دکمه پرینت کلیک کرد اطلاعات به 1 فرم دیگه بره وتوی 1سری lable نمایش داده بشه و بعد پرینت گرفته بشه ، نمی دونم چی کار کنم این اطلاعاتو چطوری پاس بدم بعد چطوری پرینت با کیفیت بگیرم ازش
تو این حالت باید از crystal reportیا report viwer استفاده کنم؟
من c# رو تازه شروع کردم میدونم سوالم خیلی مبتدیه از شما اساتید محترم تقاضای کمک دارم

ایمان مدائنی
یک شنبه 08 اسفند 1389, 10:30 صبح
شما ميتوني با استفاده از hash table يا dictionary مقادير رو انتقال بدي
بعد از فرم عكس بگير و پرينت كن

aisana
یک شنبه 08 اسفند 1389, 10:58 صبح
ممنون از پاسختون ، ولی با یان روش پرینت می گیرم چون از صفحه عکس می گیره خیلی بی کیفیت می شه امتحان کردم، بعد این hash table چه جوریه؟ می شه لطف کنید

1کم توضیح بدید؟

ایمان مدائنی
یک شنبه 08 اسفند 1389, 11:15 صبح
براي ارسال مقادير هست مثل ديكشنري عمل ميكنه يعني يك مقدار و يك كليد داره كه ميتوني مقادير رو انتقال بده

aisana
یک شنبه 08 اسفند 1389, 11:27 صبح
برای پرینت گرفتن از فرمم چیکار کنم به نظر شما؟باید از برنامه های گزارش گیری استفاده کنم حتما؟ نمیشه کاری کرد؟

ایمان مدائنی
یک شنبه 08 اسفند 1389, 11:52 صبح
اگه از برنامه هاي گزارش گيري استفاده كني خيلي بهتره
مثل كريستال ريپورت

aisana
یک شنبه 08 اسفند 1389, 12:09 عصر
نمی تونم اطلاعات تو فرمم رو به report بفرستم بعد از طریق report viewr نمایش بدم و پرینت بگیرم ؟
نتونسم کریستال ریپورت رو به c# vs2010 وصل کنم پيغام مي ده ميگه بايد dl کني مثل اينکه بخاطر تحريم و اين داستاناdl رو بسته

ایمان مدائنی
یک شنبه 08 اسفند 1389, 12:14 عصر
چرا ميتونيد اينكارو بكنيد
مشكلي پيش نمياره

hamed shahba
یک شنبه 08 اسفند 1389, 12:14 عصر
سلام
من 1پروژه با همین محتوا انجام دادم
بجای استفاده از Crystal report&Data grad viewاز یه print Objectوrichtextbox استفاده کردم
به نتیجه مطلوبم رسیدم
یعنی دیگه نیاز نبود که اطلاعاتمو به 1فرم دیگه انتقال بدم. اطلاعات رو به Richtextbox می افزودم ودر انتها با کیفیتی عالی (print Object)پرینتمو میگرفتم

با این حال Crystal report&Data grad view ابزار های بسیار قدرتمندی هستند.:متفکر:

aisana
یک شنبه 08 اسفند 1389, 12:27 عصر
چطوری این کاری که خودم گفتم و انجام بدم ؟:ناراحت:
بعد آقای حامد شما چطوري اينکارو کرديد؟

aisana
یک شنبه 08 اسفند 1389, 13:00 عصر
چرا ميتونيد اينكارو بكنيد
مشكلي پيش نمياره

میشه بگید چطوری؟

ایمان مدائنی
یک شنبه 08 اسفند 1389, 13:03 عصر
خب شما بايد پارامترها را به اون پاس بديد كه يك بحث مفصل مي باشد
در اينترنت مقالات خوبي در اين ضمينه وجود دارد
چو با دو يا ده خط توضيح دادن من به نتيجه نمي رسيد

aisana
یک شنبه 08 اسفند 1389, 13:49 عصر
ممنون از راهنماییتون

javaneroz
یک شنبه 14 فروردین 1390, 01:37 صبح
سلام.
دوست عزیز اصلا نیازی به این همه دردسر نیست.
شما میتونین به راحتی اطلاعاتتون را از یه فرم به یک فرم دیگه انتقال بدین.من این راه حل ساده را پیشنهاد میکنم.

یک پروژه Windows Forms Application ایجاد نمایید.
بر روی Form1، یک کنترل TextBox و یک کنترل Button اضافه نمایید.
هر دو کنترل را انتخاب نمایید و خصوصیت Modifiers آنها را برابر Public قرار دهید.
فرم دیگری را با نام Form2 به پروژه اضافه نمایید.
همانند Form1، بر روی Form2، یک کنترل TextBox و یک کنترل Button اضافه نمایید.
هر دو کنترل را انتخاب نمایید و خصوصیت Modifiers آنها را برابر Public قرار دهید.
در Form1 بر روی button1 دوبار کلیک کنید و کد ذیل را بنویسید:
private void button1_Click(object sender, EventArgs e)
{
Form2 frm = new Form2();
frm.textBox1.Text = textBox1.Text;
frm.Show(this);
}

در Form2 بر روی Button1 دوبار کلیک کنید و کد ذیل را بنویسید:
private void button1_Click(object sender, EventArgs e)
{
this.Close();
}

بر روی Form2 کلیک کنید و از بخش رویدادها بر روی رویداد FormClosing دوبار کلیک کنید و کد ذیل را بنویسید:
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
Form1 frm = this.Owner as Form1;
frm.textBox1.Text = textBox1.Text;
}

در رابطه با پرینت فرم هم میتونی فرم را در یه فرم MDI قرار بدی و بعدش اونا پرینت بگیری.

aisana
سه شنبه 16 فروردین 1390, 14:14 عصر
ممنون از جوابتون ، قسمت آخر که گفتید فرم را در یه فرم MDI قرار بده بعد پرینت بگیرو متوجه نشدم اگه میشه 1 کم بیشتر توضیح بدید

mahdi_sooma
چهارشنبه 17 خرداد 1391, 07:52 صبح
چرا اين بحثها هيچ وقت به جواب نهايي نمي رسه و بعضيا فقط ميان و با جملاتي مثل ( تو همين تاپيك بگرد! و تو اينترنت سرچ كن و جوابش مفصله و ....) وقت بقيه رو مي گيرن؟