32 lines
901 B
C#
32 lines
901 B
C#
|
using Gtk;
|
||
|
|
||
|
namespace Samples
|
||
|
{
|
||
|
[Section(ContentType = typeof(FileChooserDialog), Category = Category.Dialogs)]
|
||
|
class FileChooserDialogSection : ListSection
|
||
|
{
|
||
|
public FileChooserDialogSection ()
|
||
|
{
|
||
|
AddItem ($"Press button to open {nameof(FileChooserDialog)} :", new FileChooserDialogDemo ("Press me"));
|
||
|
}
|
||
|
}
|
||
|
|
||
|
class FileChooserDialogDemo : Button
|
||
|
{
|
||
|
public FileChooserDialogDemo (string text) : base (text) { }
|
||
|
|
||
|
protected override void OnPressed ()
|
||
|
{
|
||
|
var fcd = new FileChooserDialog ("Open File", null, FileChooserAction.Open);
|
||
|
fcd.AddButton (Stock.Cancel, ResponseType.Cancel);
|
||
|
fcd.AddButton (Stock.Open, ResponseType.Ok);
|
||
|
fcd.DefaultResponse = ResponseType.Ok;
|
||
|
fcd.SelectMultiple = false;
|
||
|
|
||
|
ResponseType response = (ResponseType) fcd.Run ();
|
||
|
if (response == ResponseType.Ok)
|
||
|
ApplicationOutput.WriteLine (fcd.Filename);
|
||
|
fcd.Destroy ();
|
||
|
}
|
||
|
}
|
||
|
}
|