我正在 Linux Mint 17 中的 Mono/MonoDevelop 下编写一个 C# Gtk# 应用程序。我在一个包含 3 个项目的表单上有一个 ComboBox。我能够放置它并且非常好,但是,我在设计器代码中收到一个错误,指出 ComboBox 不包含“NewText”的定义。 docs.go-mono.com 上的 Mono 文档说这个 NewText 方法是您添加项目的方式,但是,显然我的没有。
- 我的 MonoDevelop 版本是 4.0.12
- 项目目标 Gtk# 版本是 3.0 我有以下引用资料及其在项目中引用的版本
最后是设计器代码
//top of file declaration
private global::Gtk.ComboBox framestyle_Val;
//further down, this defines all the items
this.framestyle_Val = global::Gtk.ComboBox.NewText ();
this.framestyle_Val.AppendText (global::Mono.Unix.Catalog.GetString ("Single Sprite"));
this.framestyle_Val.AppendText (global::Mono.Unix.Catalog.GetString ("Left/Right Sprites"));
this.framestyle_Val.AppendText (global::Mono.Unix.Catalog.GetString ("Left/Right/Upside-Down Sprites"));
值得注意的是,显然也没有 AppendText 定义/方法,但我认为一旦我们弄清楚了这个定义/方法就会弄清楚。
有什么想法吗?我自己也很困惑。提前致谢,
迈克
最佳答案
我遇到了同样的问题。 MonoDevelop 似乎无法生成与 Gtk#3 一起使用的正确代码。
您可能想要安装 Gtk#2,这不会覆盖 GTK#3 安装,并使用此版本定位您的项目,以便能够使用 MonoDevelop 的可视化设计能力。 也许您需要再次创建干净的 GTK#2 项目。
如果您找到了使用 GTK3 的解决方案,请给我一个想法。
关于C# - Gtk.ComboBox 不包含 'NewText' 的定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24876596/