Exemple #1
0
        /// <summary>
        /// カスタムファイル選択ダイアログを表示します。
        /// </summary>
        /// <returns></returns>
        public ShellFile ShowCustomFileOpenDialog()
        {
            using (var dialog = new FileOpenDialog())
            {
                // Custom Controls
                var button1 = new FileDialogButton("button", "Button1");
                button1.Click += (_, args) => MessageBox.Show("Button1", "Message");
                dialog.Controls.Add(button1);

                var combo1 = new FileDialogComboBox("combo1",
                                                    new FileDialogComboBoxItem("Item1"),
                                                    new FileDialogComboBoxItem("Item2"),
                                                    new FileDialogComboBoxItem("Item3"));
                dialog.Controls.Add(combo1);

                if (dialog.Show() == FileDialogResult.Ok)
                {
                    return(dialog.GetShellFiles().FirstOrDefault());
                }
                return(null);
            }
        }
 internal void AddButton(FileDialogButton control)
 {
     Contract.Requires(control != null);
     this.FileDialogInternal.AddButton(control.Id, control.Text);
 }