c# - How to display data from a SQLite database into a GTK# TreeView? -


os: opensuse 11.4 ide: monodevelop 2.4.2 using gtk#

i need display datatable of sqlite database in simple grid view, in windowsforms'/wpf's datagridview, gtk#. have been trying configure gtk.treeview display data properly, no luck. data not displayed , obscure error in application output. here code:

            type[] types;                        sqlitecommand cmd = new sqlitecommand("select * "+tables.users, _cddapconn);             cmd.connection.open();             sqlitedatareader reader = cmd.executereader();             types = new type[reader.fieldcount];                   for(int = 0; < types.length; i++)             types[i] = typeof(string);         gtk.liststore list = new gtk.liststore(types);          for(int = 0; < tblusers.schema.length; i++)         {                            table.appendcolumn(tblusers.schema[i], new gtk.cellrenderertext(), "text");         } while(reader.read())         {             string[] rowdata = new string[tblusers.schema.length];             for(int index = 0; index < tblusers.schema.length; index++)             {                 rowdata[index] = reader.getstring(index);                                    table.columns[index].addattribute(new gtk.cellrenderertext(), "text", index);                  }                 list.appendvalues(rowdata);           }         table.model = list;         reader.close();         cmd.connection.close(); 

i followed example given here: http://www.mono-project.com/gtksharp_treeview_tutorial. first create model (liststore) initializing string type data of every column. append columns of data table tree view. engage sqlite reader, , every entry add data model. add cell each column pointing data. finally, give tree view model.

however, manages display columns no data. in application output this:

gtk-critical **: gtk_tree_view_column_cell_layout_add_attribute: assertion `info != null' failed 

i spent few hours looking information problem no success. surprising found no examples of treeview being used in mono display data database, or documentation on gtk# matter.

how can make grid view work? need display data , accept row selections (so can check id column of selected row).

i saw same you, following gtksharp treeview tutorial gives exact same assertion , no data in tree. think assert red herring. in case, got aiming following code.

  liststore setupmodel( treeview tv ){     var m = new liststore(typeof(string),typeof(string));      var namecol = new treeviewcolumn( "name",        new cellrenderertext(), "text", 0 );     tv.appendcolumn( namecol );      var colourcol = new treeviewcolumn( "colour",        new cellrenderertext(), "text", 1 );     tv.appendcolumn( colourcol );      tv.model = m;     return m;   }    void populatedata( liststore model ) {     model.appendvalues( "fred", "blue" );     model.appendvalues( "bob", "green" );     model.appendvalues( "mary", "yellow" );     model.appendvalues( "alice", "red" );   } 

Comments

Popular posts from this blog

objective c - Change font of selected text in UITextView -

php - Accessing POST data in Facebook cavas app -

c# - Getting control value when switching a view as part of a multiview -