Mono: Form készítésnél hiba

Fórumok

Sziasztok!

Tudom, hogy nem 100%-osan ide tartozik a téma, de muszáj megkérdeznem.
A "Tanuljuk meg a c# programozási nyelvet..." könyvet olvasom, de a könyvbeli második példánál elakadtam. Ott ugyanis ez szerepel:

using System;
using System.Windows.Forms;

ezeket a hibaüzeneteket adja a MonoDevelop:

error CS0234: The type or namespace name `Windows' does not exist in the namespace `System'. Are you missing an assembly reference?
error CS0246: The type or namespace name `Windows.Forms' could not be found. Are you missing a using directive or an assembly reference?

Feltételezem még installálni kell valamit, csak kérdés, hogy mit?

Ubuntu 8.04 Linux az operációs rendszerem.

Előre is kösz a segítséget!

Hozzászólások

Ha nincs fenn a libmono-winforms2.0-cil csomag akkor azt rakd fel.

Gábor

Nem elég telepíteni a csomagot, de a fordítónak be kell állítani, hogy ezekre a csomagokra is hivatkozzon.
Most így hirtelen nem emlékszem, hogy pontosan hogy kell. mcs-nek valami kapcsolót kell megadni, MonoDevelop környezetben pedig a projektbeállításoknál kell beállítani.

Köszönöm!

A fordítást most már megoldottam. Létrehoztam egy új megoldást (solution), és abba helyeztem el a könyvben lévő programot. A referenciáknál megadtam a "System.Windows.Forms"-ot is.
Tehát a fordítás rendben van.

De, hogy láthatnám az eredményt is? Szeretném futtatni a programot, de hogyan? Mit kell tennem még?

Az a baj, hogy monoban a Windows.Forms implementáció nem 100%-os, lásd:

http://www.mono-project.com/WinForms_CodeOwners
http://www.mono-project.com/WinForms

A könyved pedig már az első példaprogramnál erre épít. Ez így tényleg szívás lesz. Plusz monodevelopban nincs vizuális form tervező WinForms-hoz, erre is csak valami félkész külső program van (winforms designer).

Ha linux alatt akarsz mono/monodeveloppal programozni, akkor inkább a Gtk#-ot tanulmányozd, ahhoz van projekt "varázsló", form tervező, és lesz sikerélmény.

Nemrég volt egy szép cikk itt a hup-on a témában:

http://hup.hu/cikkek/20080421/mono_es_gtk_sharp_attekintes

+1 az express-re (bár mi 2005pro-val toljuk suliban)

pont tegnap néztem a monodevelop-ot, még kb. sehol nem tart. sajnos

jah, és lehet, hogy 2005-ös express-t kéne próbálni. még ms emberkék is azt mondják, hogy a 2008 express gyenge a pro-hoz képest

persze ha te újabb dolgokkal akarsz bíbelődni (wcf, wpf, linq2sql...), akkor meg a 2005-össel nem érdemes kezdeni, mert (szintén az ms emberkék szerint) az addonok 2005höz nem túl jók. de mivel mono-zol, gondolom neked nem kellenek ilyenek

Sajnos tele van a HUP ilyen jellegű hozzászólással. Nem értem miért? Miért jó nektek állandóan azzal csesztetni a másikat, hogy miért azt használod, miért nem ezt? Miért a C++ tanulod miért nem a Java-t? Stb.

Gyerekek! Szokjunk le erről. Ha van valakinek értelmes hozzászólása az adott problémához, akkor írja meg. Ha nincs, akkor inkább hallgasson!

Nem akartalak megbántani bervi, de nagyon sokszor olvasok ilyen jellegű hozzászólást.
Én ezt a témát azért indítottam, hogy a monoval kapcsolatos problémámat megoldjam. Szerencsére végül sikerült is. Most még túl kezdő vagyok ahhoz, hogy ugrálgassak egyik eszközről a másikra. Nyílván nekem még bőven elég a MonoDevelop tudása. Ha majd kinőttem, akkor majd azt a kérdést teszem fel a HUP-on, hogy mi mást ajánlotok, mert túl keveset tud. Na majd akkor értelmesnek tekintem az ilyen hozzászólást. Most csak zavaró, mert az utolsó kérdésemre lehet, hogy nem válaszol már senki, mert mindenki azt figyeli majd, hogy milyen jól veszekszenek ezek itt ketten.

Pfff.. már ne is haragudj .. csatlakoznék én is az általad definiált arroganciaklubba, ugyanis egyet értek azzal, hogy a közölt probléma helyett a b*szogatás megy, hogy miért nem ezt, meg ezt használod.

Ugyan egyet értek veled hogy a VS nagyságrendekkel hasznosabb, mint a MonoDevelop (bár a MD sem teljesen használhatatlan szerintem, és szépen fejlődik a Monoval együtt), de minek kell másodszor-harmadszor is a fülét rágni, hogy miért "szarakodik", utána meg offenzív szavakkal dobálózni?

Ennyit akartam hozzáfűzni.

http://gyuszk.homelinux.org

-- There is never time to do it right, but always time to do it over.

Gondolom sikerült olyanra megcsinálni a MonoDevelop programot hogy néha elromlik majd néhány újraindítás után megjavul. Sajnos sok ilyen bugos program van. Ez van.
Tippem: A függőségek átállítása sok IDE alatt okoz furcsaságokat az előre lefordított, beindexelt és bekesselt dolgok miatt. Ezeket egy újraindítás kisöpri.

Parancssori fordításhoz érdemes lehet kipróbálnod a nant rendszert. http://nant.sourceforge.net/ Tudom a fenti posztban épp az ilyen ne ezt hanem azt használd dolgokra akadtál ki. De ez tényleg jó :-)

Build szkripteket főleg nem fejlesztőeszköz helyett szokták használni, hanem azért, hogy a build folyamat automatizálva és dokumentálva legyen.
Egyszemélyes kísérletezős projektnél persze ennek nem nagyon van jelentősége. Csak azért ajánlottam a nant-ot, mert láttam hogy make-t használtál.

Hát a "make" csak azért került nálam szóba, mert MD-ben van egy olyan parancs, hogy "Makefile-ok generálása...", és megpróbálkoztam azzal is, hátha "make"-vel sikerül létrehoznom az exe állományt. De akkor az sem működött. Most, hogy az MD rendben fordít, így a "make" is normálisan megy.