FileChooserWidget GTK 中的功能和事件#

Features and Events in FileChooserWidget GTK#

我在 Windows 上的 Xamarin Studio 社区版本 6.3 上使用 GTK#(新手)。 最近,我试图构建一个 Total Commander 应用程序。在构建过程中,我使用了File Chooser Widget,发现了一些无法解决的问题:

1- 当我点击“位置”框中的文件夹时,会出现几个按钮:\ <icon button with a pen and a paper> enter image description here。当我点击 Icon Button 时,a Location Entry 会出现。但是,我不知道如何使用 entry 就像打开 folderfolder path 一样显示在 Location entry 上或输入 文件夹路径 文件夹 将在小部件上打开。我的临时解决方案是创建一个条目:

FileChooserWidget fcw1 = new global::Gtk.FileChooserWidget(((global::Gtk.FileChooserAction)(0)));
Entry e1 = new Entry();

e1.Text = fcw1.CurrentFolder;

我希望找到捕获那个 Location Entry 并使用它的方法。

2- 在工作场所,我在使用双击事件打开文件时遇到问题。我的代码:

[GLib.ConnectBefore]    
protected void OnFcw1ButtonPressEvent(object o, ButtonPressEventArgs args)
        {
            if (((Gdk.EventButton)args.Event).Type == Gdk.EventType.TwoButtonPress)
                 {
                     entry1.Text = fcw1.Filename;
                     if (File.Exists(fcw1.Filename))
                         Process.Start(fcw1.Filename);
                 }
        }

3- find同样的问题 使用SearchRecently Used表示Could not start the search process 该程序无法创建与索引器守护程序的连接。请确保它是 运行.

请帮助我找到解决方案并教我如何找到所有这些小部件的名称。非常感谢!

要回答 #1,FileChooser 小部件上有一个操作 属性,您可以根据需要对其进行设置(打开、创建、Select 文件夹等)。位置字段包含文件名(您 select 如果浏览,或者如果创建新文件则可以输入)。

在 #2 上,双击 FCW 的默认行为是钻取文件夹和 select 文件。因为您有一个 Glib.ConnectBefore 属性,所以您的事件处理程序将在默认处理程序之前 运行。也许您在 #2 中遇到的任何问题都与处理程序有关?

#3 听起来像是您的开发机器上的问题。 FCW 将允许您搜索文件系统,只要它可以连接到守护程序,所以它看起来不是 运行ning。我在 Windows、Mac OSX、Ubuntu 或其他机器上的 RHEL 中没有遇到过问题。