gtk-sharp 2.12.0.0 Gtk# is thread aware, but not thread safe; See the Gtk# Thread Programming for details. An HBox is a specific type of for packing widgets horizontally. using System; using Gtk; class HBoxTester { static void Main () { Application.Init (); Window myWindow = new Window ("HBox Widget"); HBox myBox = new HBox (false, 4); //Add some buttons to the horizontal box AddButton (myBox); AddButton (myBox); //Add the box to a Window container myWindow.Add (myBox); myWindow.ShowAll (); Application.Run (); } static void AddButton (HBox box) { box.PackStart (new Button ("Button"), true, false, 0); } } Imports System Imports Gtk Class HBoxTester Shared Sub Main () Application.Init () Dim myWindow As New Window ("HBox Widget") Dim myBox As New HBox (False, 0) ' Add the box to a Window container myWindow.Add (myBox) myWindow.SetDefaultSize (250, 40) ' Add some buttons to the box HBoxTester.AddButton (myBox) HBoxTester.AddButton (myBox) HBoxTester.AddButton (myBox) myWindow.ShowAll () Application.Run () End Sub Shared Sub AddButton (ByVal box As HBox) box.PackStart (New Button ("Button"), True, False, 0) End Sub End Class Other ways of laying out widgets include using a vertical box, (see ), a table, (see ), button boxes, etc. Useful methods for manipulating boxes can be found in the superclass for HBox, . Gtk.Box Constructor Internal constructor Pointer to the C object. This is an internal constructor, and should not be used by user code. Constructor The main way to create a new HBox. If , all widgets in the box are forced to be equally sized. The number of pixels to place between each widget in the box. Property GLib.GType GType Property. a Returns the native value for . Constructor Protected Constructor. a Chain to this constructor if you have manually registered a native value for your subclass. System.Obsolete Constructor Default constructor.