GTK#TreeView和StoreList不会显示数据

时间:2013-08-28 10:49:03

标签: c# mono treeview gtk#

我的目标是查询表并将其添加到ListView。我只得到一个包含列名和错误的空ListView。我使用了本教程,但没有用。我意识到添加了空行,因为我可以点击它们。

        using (MySqlConnection connect = new MySqlConnection(connectionString))
        {
            connect.Open();

            // QUERY GENERATION

            mySqlCommand = new MySqlCommand(query, connect);

            // QUERY PARAMETERS ADDED

            ListStore store = new Gtk.ListStore(typeof(string[]));

            for (int i = 0; i < tempselect.Length; i++) {
                _treeView.AppendColumn(tempselect[i], new Gtk.CellRendererText(), "text");
            }

            MySqlDataReader reader = mySqlCommand.ExecuteReader();

            while (reader.Read())
            {
                store.AppendValues(reader);
            }
            reader.Close();

            _treeView.Model = store;

            connect.Close();
        }

没有错误。该应用程序只是不显示数据。表中有数据。 我想解决这个问题一整天。什么都行不通。

谢谢。

1 个答案:

答案 0 :(得分:1)

我不知道tempSelect是基于您粘贴的代码...

我建议你在循环中尝试这个:

var column = new TreeViewColumn ();
column.Title = "Column Name";
column.Clickable = false;

var renderer = new CellRendererText ();
column.PackStart (renderer, true);

column.AddAttribute (renderer, "text", 0);
_treeView.AppendColumn (column);

我怀疑你的问题是你只需要将0作为最后一个参数传递给你正在调用的AppendColumn()方法。需要此值来指定文本所在的列。