1

50個のフォームでC#アプリケーションを作成しました。

残念ながら、Mono(Mac OSバージョン)は標準のウィンドウWinFormでは機能しません。

理由はわかりませんが、今この問題を解決する必要があります。

唯一の解決策は、winformをGTK#に変換するようですが、GTK#の経験はありません。

私の質問は次のとおりです。

  • 50個のフォームをGTK#に変換するのはどれくらい難しいですか?
  • 私は正確に何をする必要がありますか?

これは簡単な解決策ですか?または、アプリケーションを書き直す必要がありますか?

これとは別に、VisualStudioIDEのようなデザイン変更を行うためにVisualIDEを見つける/使用できる場所がわかりません。

4

2 に答える 2

1

GTK は非常に優れたフレームワークであり、Windows と Linux の両方で使用できます。GTK# は手動で記述したり、monodevelopを使用して設計したりするのが非常に簡単です。したがって、興味がある場合は試してみる価値があります。一般に、GTK# アプリの方がヘルプを見つけやすいです(GTK+ ドキュメントが役立ちます)。

GTK# の最も優れた点は、自動レイアウトであり、winform のようなおかしなパネル配置や絶対配置は不要です。

なぜあなたのwinformsアプリが機能しないのか興味があります.Monoのwinformsサポートは非​​常に優れており、.Netとほぼ完全に一致しています. どのようなエラーがありますか?

于 2012-05-09T21:43:16.823 に答える
0

Mono の Winforms で発生した問題は、ファイル "xyz.designer.cs" に次のコードが含まれていることが多いことでした。

((System.ComponentModel.ISupportInitialize)(xyz)).BeginInit();

((System.ComponentModel.ISupportInitialize)(xyz)).EndInit();

Mono はこのコードを受け入れないようです。私の印象では、このコードはほとんどの Windows フォームから削除できます。しかし、よくわかりません。このコードは GUI デザイナーによって自動的に作成されるため、"xyz.designer.cs" ファイルを Visual Studio で変更することはできません。ただし、これらのファイルは Monodevelop で変更できます。50 個のファイルを手動で更新する必要があるようです。

于 2012-05-12T18:36:19.387 に答える