انتقال اطلاعات یک سلول از DataGridView به TextBox فرم دیگر

شاید یکی از بهترین کاربردهای Propertyها در انتقال اطلاعات بین فرم ها باشد. یک برنامه ویندوزی ایجاد کرده و یک فرم (Form2) به برنامه اضافه کنید. بر روی فرم اصلی برنامه یک کنترل DataGridView و در روی فرم دوم یک کنترل TextBox قرار دهید :

transfer-data-from-cell-from-datagridview-another-textbox-form-csharp

حال بر روی فرم دوم دکمه F7 را زده تا وارد محیط کدنویسی آن شوید و یک خصوصیت ازنوع رشته تعریف کنید :

using System.Windows.Forms;

namespace DatagridToTextbox
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        public string Text                     
        {                                      
            get { return this.textBox1.Text;  }
            set { this.textBox1.Text = value; }
        }                                      
    }
}

حال در رویداد Load فرم اول و CellClick دیتاگرید کدهای زیر را بنویسید :

using System;
using System.Windows.Forms;

namespace DatagridToTextbox
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            this.dataGridView1.ColumnCount = 2;
            this.dataGridView1.Rows.Add(new object[] { "A","B" });
            this.dataGridView1.Rows.Add(new object[] { "C", "D" });
        }

        private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            Form2 f2 = new Form2();
            f2.Text = this.dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
            f2.ShowDialog();
        }
    }
}

حال برنامه را اجرا و بر روی یکی از خانه های دیتاگریدویو کلیک کرده و نتیجه را مشاهده نمایید :
transfer-data-from-cell-from-datagridview-another-textbox-form-csharp-02