personalizados - C#Mono+Winforms Problema de MessageBox
messageboxbuttons c# (5)
Tengo un archivo llamado hellowf.cs
class MyFirstApp {
static void Main() {
System.Windows.Forms.MessageBox.Show("Hello, Mono+WinForms!");
}
}
En Ubuntu 8.10, hago lo siguiente
gmcs hellowf.cs -r:System.Drawing.dll -r:System.Windows.Forms.dll
mono hellowf.exe
... y se ve así:
texto alternativo http://img136.imageshack.us/img136/4674/helloproblemuk5.png
La segunda parte del mensaje falta. ¿Por qué está pasando esto? El mismo binario - hellowf.exe - funciona bien en Windows.
Actualización: Esto es realmente molesto. Estas son las versiones mono que he tenido e intenté hacer que esto funcione hasta ahora:
1.9.1 (from official ubuntu repo)
2.0.1 (from some some 3rd party repo)
2.2 (wiped every mono pkg and compiled myself)
Mi versión mono actual:
mono --version
Mono JIT compiler version 2.2 (tarball Wed Jan 14 22:58:21 CET 2009)
Copyright (C) 2002-2008 Novell, Inc and Contributors. www.mono-project.com
TLS: __thread
GC: Included Boehm (with typed GC)
SIGSEGV: altstack
Notifications: epoll
Architecture: x86
Disabled: none
gmcs --version
Mono C# compiler version 2.2.0.0
... ¿alguna pista?
Consejo de depuración estándar: comience a hacer pequeños cambios controlados y vea qué sucede. Esto ayudará a reducir el problema.
Intenta eliminar los símbolos:, +!
Intenta eliminar el espacio.
Pruebe una variedad de cadenas más cortas, y posiblemente algunas más largas.
Una vez que tenga una mejor idea de lo que el MessageBox imprimirá y no lo hará, puede comenzar a depurar ese problema específico, en lugar de intentar depurar, "¡No funciona!"
Finalmente, he encontrado una solución alternativa. Esto parece ser un error en Mono relacionado con la representación de fuentes. Sucede cuando la sugerencia " completa " está activada. Normalmente lo tengo de esa manera. Cambiarlo a " Leve " o " Medio " en System->Preferences->Appearance->Fonts->Details
soluciona el problema. ¡Gracias por la ayuda!
Funciona bien en opensuse 11.0, mono 2.0.1.
Por favor, edite su pregunta y ponga la versión mono que está usando.
pegue un @ en frente de "¡Hola, Mono + WinForms!" y ver si todavía sucede.
Cuando actualizó sus paquetes y su código fuente, ¿actualizó / compiló libgdiplus? Hemos visto algunos problemas gráficos originales si las versiones System.Drawing y libgdiplus no se sincronizan.