Member Avatar for Member #46692

Ok, whilst opensuse looked real purdy it just wasn't lean enough for me.

So I decided to switch to xbuntu for maximum speed and usability. At the moment it's just great

I intend to start gui development with mono and stetic.

So this is going to be a thread mainly about my experimentation with that.

So first question. How do I install mono-stetic?

Dani AI

Generated

A short practical primer on Stetic, GTK# and the differences from Visual Studio (since found the designer surprising and was right to laugh):

Stetic is a GTK# visual designer integrated with MonoDevelop. GTK layouts are container-driven (HBox/VBox/Table, alignment/packing) and use signals rather than the pixel-docked, event-first model Visual Studio users expect. That explains why double-clicking a button may not create the same automatic handler behavior you get in WinForms — in GTK you normally attach handlers to signals or name a signal in the designer.

Common workflow tips and quick fixes:

  • If the designer won’t create a handler automatically, either add the handler stub in your class with the Gtk# signature and wire it, or enter a handler name in the widget’s Signals/Events pane so the designer knows what to connect.

  • Typical handler skeleton (Gtk# button clicked):

    protected void OnButtonClicked(object sender, EventArgs e)
    {
        // your code
    }
  • You can also wire handlers in code if the designer is being awkward:

    button.Clicked += OnButtonClicked;

Layout/resizing pointers:

  • Learn the container packing properties: Expand and Fill control whether a widget grows. If a control won’t resize, check the parent container’s packing flags instead of forcing the widget.
  • Use size requests only when you need a fixed size; otherwise prefer container rules for responsive layouts.

Troubleshooting and alternatives:

  • If the Signals pane or GTK designer is missing, confirm the GTK/GUI designer add-in is enabled in MonoDevelop and that the project uses the GTK# project template (packages/add-ins must be present — hinted at that).
  • If Stetic keeps fighting you, try designing the UI in Glade and load it with Gtk.Builder at runtime; Glade is mature and can be easier for complex UIs.

If VB-like tooling is a priority, Mono’s VB support and separate tools (or Gambas) exist, but C# + GTK# historically has the strongest Mono tooling.

Recommended Answers

All 11 Replies

never used them myself and im unsure about your linux experience but here goes:

go to a console:

sudo apt-get update
sudo apt-get install (packagename)

This will install the packages. e.g to install apache i would type:

sudo apt-get update
sudo apt-get install apache2

The commands download the software from software repositories on the net and sets it up for you. It will also take care of any depedencies by updating or installing any required software Only problem is that some of these repositories may not be enabled by default

Regular ubuntu has a program called synaptic which is a nice GUI front end to the commands i just described where you can search for packages and add/modify repositories. Im not sure if Xubuntu has this.

For your own referance, here is how you keep your system up to date

sudo apt-get update
sudo apt-get upgrade

Important packages are usually not upgraded and my advice is that if they work for you, keep them as they are. but if you ever need to

sudo apt-get update
sudo apt-get dist-upgrade
commented: You the man, P.s you got a part time job yet he he. +11
Member Avatar for Member #46692

Thanx bennet, you were rigtht about suse being a memory hog I only just realised when I did a free command at the terminal.

i will try to do

sudo apt-get install mono

But I want stetic as well which should be a gui builder. How do i get this?

a number of ways

A: add the better repositorties.

I dont use ubuntu much but i believe they have repositories named "Universe" and "Multiverse" where large amaounts of software are held. Use the repositories windows under synaptics GUI (i think its undet tools) or manually edit /etc/apt/sources.list

If synaptic (a really nice package manager and the de-facto standard for debian based systems) isnt installed, you can always apt-get it.

B:

Alternatively, you can add stetics own repository (if they have one). Larger projects like WINE often have thier own, where you can be sure to get up-to-date software

C:

manually download the .deb packages from thier site and double click to install them. This is a bit more tricky however, with regards to dependencies.

Member Avatar for Member #46692

Ok I also did install monodevelop, (and that worked)

but, the gui builder is nothing like visual studio. It is horrendous. Eugh! Well maybe I need to read the documentation, but I'm finding hard to resize buttons and create event handlers. Normally I would just double click on a button to create an event handler not here!

Member Avatar for Member #46692

Wait a second is there a monobasic, that would be more like vb.net right?

i dont know but i know there is Gambas. Gambas is like VB6

Member Avatar for Member #46692

Does that sit on a framework too? In any case i'm not interested in that, mono is all the rage.

No, its standalone :(

but, the gui builder is nothing like visual studio. It is horrendous. Eugh!

LOL! Did you expect it to be? :D

Member Avatar for Member #46692

LOL! Did you expect it to be? :D

Erm yes, :( that's why I downloaded it. unless I'm missing a package?

can you do mono in Kdevelop?
or is that only c++

i like that IDE...

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.