簡體   English   中英

將文本框信息從一種形式調用到另一種形式

[英]Calling textbox information from one form to another

我有 2 個表單:第一個表單有文本框,顯示不同的任務名稱和在每個任務上花費的時間。 第二種形式有一個datagridView 使用:

        public void DataTableTest()
    {
        //Create DataTable 
        DataTable dt = new DataTable();
        //Add Columns
        dt.Columns.Add("Task Name", typeof(string));
        dt.Columns.Add("Time Worke (HH:mm:ss)", typeof(string));
        //Add Rows
        dt.Rows.Add();
        dataGridView1.DataSource = dt;
    }

我能夠以我想要的方式獲得數據表布局。 我的問題是,我想從Form1提取textbox.text來填充數據表的[0][0]單元格。 就像是:

        //Add Rows
        dt.Rows.Add();
        dt.Rows[0][0] = Form1.tasktextbox1.text;
        dataGridView1.DataSource = dt;

但這是行不通的。 當我嘗試啟動程序時,我從錯誤列表中得到以下信息:

“TaskTracker.Form1.TaskTextBox1”由於其保護級別而無法訪問。

預先感謝您的幫助。 如果您有任何問題,請第一次發帖和編程新手。

錯誤描述了自身: TaskTextBox1Form1的私有成員,您不能在另一個類上調用它。 Form1添加一個屬性:

Public string task1text { get { return this.textbox1.text; }}

然后在另一種形式上使用它:

dt.Rows[0][0] = Form1.task1text;

我能夠通過以下方式完成這項任務:

    public static string task1text;

    public void saveToolStripMenuItem_Click(object sender, EventArgs e)
    {
        task1text = TaskTextBox1.Text;
        ReportForm RF = new ReportForm();
        RF.Show();
    }

在form1上並使用Roozbeh對第二種形式的建議:

    dt.Rows[0][0] = Form1.task1text; 

謝謝大家的幫助。 慢慢想通了! :)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM