PDA

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



sahra76
پنج شنبه 03 مرداد 1392, 12:41 عصر
سلام. بچه ها من میخوام مقادیری رو از یک فرم به فرم دیگه ارسال کنم. فعلا از این روش استفاده کردم که تو فرم مبدا یک تکست باکس گذاشتم و اونو به صورت public تعریف کردم و visible رو هم false کردم. وو مقادیر ارسالی رو تون اون میریزم و در فرم مقصد اطلاعاتشو میخونم. شما روش دیگه ای میتونین پیشنهاد کنین. مثلا استفاده از متغیر سراسری. اصلا چجور میشه متغیر سراسری گذاشت و منطقی هست یا نه؟

danialafshari
پنج شنبه 03 مرداد 1392, 12:57 عصر
سلام
بسیار زیاد در این سایت حتی با همین عنوان بحث شده
باید از کلاس استفاده کنید
جستجو کنید

bomb23
پنج شنبه 03 مرداد 1392, 12:59 عصر
سلام دوستمون راست میگن باید از یه کلاس واسه استفاده کنید که اصطلاحا بهش میگن مدل.

programerinfonet
پنج شنبه 03 مرداد 1392, 13:00 عصر
خوب به جای تکست باکس و این حرفا متقیر تعریف کن و بریز تو متقیرهای سارسری
این طوری تو هر فرمی که باشی می تونی دسترسی داشته باشی

behzadkhan
پنج شنبه 03 مرداد 1392, 14:54 عصر
با سلام

همینطور که دوستمون گفتن می توانیم از یک متغیر سراسری استفاده کنیم.

برای این کار در کلاس اصلی برنامه (کلاس Program) یک متغیر استاتیک عمومی به شکل زیر تعریف کنید:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;

namespace Store
{
static class Program
{
static public string strName = "Hello";
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(fals e);
Application.Run(new CustomerForm());
}
}


این کار را در فایل Program.cs انجام دهید.

حالا در هرجای برنامه می توانید از این متغییر استفاده کنید

Program.strName = "Goodbye";

یا مقدار آن را به کنترل Textbox به دهیم:

txtName.text = Program.strName;

===================================
اگه مشکلتون حل نشد روشه دیگه ای را بگم!

با تشکر

Reza,M
پنج شنبه 03 مرداد 1392, 15:10 عصر
public static string s = TextBox1.Text; درفرم 1

===

label1.Text = Form1.s; در فرم2