public Maybe<Data.Table> Display(string defaultTableName,
     Func<Data.Table, Maybe<Exception>> createTable,
     Func<Data.Table, Tuple<Maybe<Exception>, string>> previewOperation)
 {
     DataContext = new Data.Table { Server = "localhost", Name = defaultTableName };
     _createTable = createTable;
     _previewOperation = previewOperation;
     return ShowDialog() == true
                ? Maybe.Just((Data.Table)DataContext)
                : Maybe.Nothing<Data.Table>();
 }