using System; using System.Collections.Generic; using System.Text; using System.Drawing; using wx; namespace SnapForms { class Main : Frame { MenuBar menuBar = new MenuBar(); FlexGridSizer sizer = new FlexGridSizer(1, 0, 0); Panel panel; public Main() : base("Roster", wxDefaultPosition, new Size(500, 500)) { panel = new Panel(this); Menu fileMenu = new Menu(); fileMenu.Append(1, "&Open Directory...\tCtrl+O", "Open a directory with anything, just an example"); fileMenu.AppendSeparator(); fileMenu.Append(2, "E&xit\tCtrl+Shift+W", "Exit this fine application"); menuBar.Append(fileMenu, "&File"); MenuBar = menuBar; sizer.Add(new RosterList(panel)); panel.SetSizer(sizer); sizer.SetSizeHints(panel); } } public class RosterList : ScrolledWindow { public RosterList(Window parent) : base(parent, -1, wxDefaultPosition, new Size(140, -1)) { FlexGridSizer sizer = new FlexGridSizer(1, 0, 0); Sizer = sizer; for (int i = 10; i < 10; i++) { Sizer.Add(new RosterItem(this), 1, Stretch.wxEXPAND); } sizer.SetSizeHints(this); SetScrollbars(0, 1, 0, 0); } } public class RosterItem : Panel { StaticText buddyname = null; BoxSizer sizer = new BoxSizer(Orientation.wxVERTICAL); public RosterItem(RosterList rosterlist) : base(rosterlist, -1, wxDefaultPosition, new Size(100,100)) { sizer.Add(buddyname, 0, Alignment.wxALIGN_CENTRE | Direction.wxALL, 3); buddyname = new StaticText(rosterlist, "asfd"); buddyname.Title = "asdf"; } } }