gtk#按钮点击添加小部件

时间:2014-09-06 00:38:34

标签: c# gtk#

我刚开始使用gtk#而且我遇到了一个简单问题的麻烦。当我开始一个新项目时,我使用MainWindow的Designer来创建一个带有hbox / vbox的基本UI,并创建了一个" Add Row"按钮和由表格标题组成的1行表格。

我的问题是,点击按钮后,我无法弄清楚如何在我的表格中动态添加行。

旁注:Designer中的表格标有" table4",但我无法弄清楚如何访问它。我想一旦我可以获得如何正确访问它的帮助,应该有一个AddRow函数,我可以指定高度,边距等?

感谢您的帮助。

的Program.cs:

using System;
using Gtk;

namespace PMA
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            Application.Init ();

            //create main window
            MainWindow win = new MainWindow ();

            Application.Run ();
        }
    }
}

MainWindow.cs:

using System;
using Gtk;
public partial class MainWindow: Gtk.Window
{
    public MainWindow () : base (Gtk.WindowType.Toplevel)
    {
        Build ();
    }

    protected void OnDeleteEvent (object sender, DeleteEventArgs a)
    {
        Application.Quit ();
        a.RetVal = true;
    }

    private void AddButtonPressHandler (object obj, EventArgs args)
        {
            Console.WriteLine("This works, but can't figure out how to dynamically add a row to MainWindow's table");
        }
}

1 个答案:

答案 0 :(得分:0)

我不知道这是否能解决您的问题,但我认为您可以简单地增加NRows属性。把它放在MainWindow.cs中代替你的AddButtonPressHandler方法:

private void AddButtonPressHandler (object obj, EventArgs args)
{
       table4.NRows ++;
}

我希望它能正常运作。