我Form1里有DataGridView1,button1,
Form2里textBox1及button2,我现在点button1打开Form2,然后在textBox1里输入查询条件,点button2时DataGridView1能按我的查询条件显示数据,但总不能成功,求救!我写法如下:
Form1 button1 click事件下:
      Form2 F2=new Form2(this);
      F2.ShowDialog();Form2中
        Form2 _F1;
        public Form2(Form1 F1)
        {
            InitializeComponent();
            _F1 = F1;
        }button2 click事件
       _F1.DataGirdView1.DataSource=ds.Table["XX"];请指教, 解决立刻给分.

解决方案 »

  1.   

    Form2 frm Form1;
     public Form2(Form1 F1)
            {
                InitializeComponent();
                frm= F1;
            }
      

  2.   

    如果是我,我的做法是点击Button2的时候From2关闭,将From2中的条件传回From1,在From1中进行操作.
      

  3.   

    參見
    http://blog.csdn.net/tjvictor/archive/2006/06/23/824617.aspx
      

  4.   

    Form1 frm Form1;
     public Form2(Form1 F1)
            {
                InitializeComponent();
                frm= F1;
            }
      

  5.   

    这个应该简单一点 自己琢磨琢磨  tjvictor(终于升星了,向两星奋斗)http://blog.csdn.net/tjvictor/archive/2006/06/23/824617.aspx
      
     
      

  6.   

    namespace WindowsApplication2
    {  
        partial class Form2
        {
            /// <summary>
            /// 設計工具所需的變數。
            /// </summary>
            private System.ComponentModel.IContainer components = null;        /// <summary>
            /// 清除任何使用中的資源。
            /// </summary>
            /// <param name="disposing">如果應該公開 Managed 資源則為 true,否則為 false。</param>
            protected override void Dispose(bool disposing)
            {
                if (disposing && (components != null))
                {
                    components.Dispose();
                }
                base.Dispose(disposing);
            }        #region Windows Form 設計工具產生的程式碼        /// <summary>
            /// 此為設計工具支援所需的方法 - 請勿使用程式碼編輯器修改這個方法的內容。
            ///
            /// </summary>
            private void InitializeComponent(Form1 frm)
            {
                Form1 f;
                f = frm;
                this.components = new System.ComponentModel.Container();
                this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                this.Text = "Form2";
            }        #endregion
        }
    }
      

  7.   

    这样改一下看看:
    Form1 button1 click事件下:
          Form2 f=new Form2(this);
          if (f.ShowDialog()==DialogResult.OK)
          {
                DataGirdView1.DataSource=ds.Table[f.TableName];
          }Form2中
            private string tableName;
            public Form2()
            {
                InitializeComponent();
            }
    添加一个属性:
    public string TableName
    {
        get
        {
            return this.tableName;
        }
    }
    button2 click事件
           this.tableName=this.textBox1.Text;
      

  8.   

    button2 click事件
           this.tableName=this.textBox1.Text;
           this.DialogResult=DialogResult.OK;
      

  9.   

    多谢了各位了,特别感谢<hbxtlhx(平民百姓)>,他的代码我看的比较明白,多谢各位