C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.23357 の関連記事表示

<< 0 >>
■23357  SaveFileDialogのファイル名が空白だったとき
□投稿者/ クー -(2008/08/13(Wed) 09:47:33)

    分類:[C#] 

    初心者です。よろしくお願いします。
    現在、VB-Reportを使用した帳票の、プレビュー画面をC#で作成しています。
    「PDFに保存」ボタンをプレビュー画面に用意し、SaveFileDialogで「名前をつけて保存」ボックスを
    表示するようにしています。
    デフォルトのファイル名表示には、プレビュー中の帳票名が入る様にしてあるのですが、ここのファイル名を
    「空白」にした場合、保存ボタンを無効にする方法はあるのでしょうか。
    (通常EXCEL保存の時など、ファイル名を空白にするとボタンが押せない様になるのですが・・・。同じ仕様にしたいのです。)

    以下の様なコードにしているのですが、空白で「保存」ボタンを押下するとDialogResultの戻り値を取得することが出来ません。
    ボタン無効が無理そうであれば、「空白だったら注意メッセージを出す」という仕様でも構わないのですが・・・。

    Win32APIによるダイアログの拡張は避けたいのですが、何か方法がありましたらご教示ください。


    if (dlgSaveFile.ShowDialog() == DialogResult.OK)
    {
    //PDF保存
    try
    {
    if (dlgSaveFile.FileName != "") //空白のときここまで来ない
    {
    xlsPreviewCtrl.Out.PDF(dlgSaveFile.FileName); //VB-ReportコントロールによるPDF保存
    }
    }
    catch
    {
    throw;
    }
    }
親記事 /過去ログ44より / 関連記事表示
削除チェック/

■23364  Re[1]: SaveFileDialogのファイル名が空白だったとき
□投稿者/ カドルドエグ -(2008/08/13(Wed) 10:30:40)
    No23357 (クー さん) に返信
    > 初心者です。よろしくお願いします。
    > 現在、VB-Reportを使用した帳票の、プレビュー画面をC#で作成しています。
    > 「PDFに保存」ボタンをプレビュー画面に用意し、SaveFileDialogで「名前をつけて保存」ボックスを
    > 表示するようにしています。
    > デフォルトのファイル名表示には、プレビュー中の帳票名が入る様にしてあるのですが、ここのファイル名を
    > 「空白」にした場合、保存ボタンを無効にする方法はあるのでしょうか。
    > (通常EXCEL保存の時など、ファイル名を空白にするとボタンが押せない様になるのですが・・・。同じ仕様にしたいのです。)
    >
    > 以下の様なコードにしているのですが、空白で「保存」ボタンを押下するとDialogResultの戻り値を取得することが出来ません。
    > ボタン無効が無理そうであれば、「空白だったら注意メッセージを出す」という仕様でも構わないのですが・・・。
    >
    > Win32APIによるダイアログの拡張は避けたいのですが、何か方法がありましたらご教示ください。
    >
    >
    > if (dlgSaveFile.ShowDialog() == DialogResult.OK)
    > {
    > //PDF保存
    > try
    > {
    > if (dlgSaveFile.FileName != "") //空白のときここまで来ない
    > {
    > xlsPreviewCtrl.Out.PDF(dlgSaveFile.FileName); //VB-ReportコントロールによるPDF保存
    > }
    > }
    > catch
    > {
    > throw;
    > }
    > }
    「開く」または「保存」ボタンを押したときのイベント、「FileOKイベント」というのがありますが
    http://msdn.microsoft.com/ja-jp/library/system.windows.forms.filedialog.fileok.aspx
    これもファイル名が入っていないとやはり発生しませんでした。

    また、「SaveFileDialogクラス」自体にもこのイベント以外で保存等のボタンに関わるメンバは持っていないようです。
    http://msdn.microsoft.com/ja-jp/library/system.windows.forms.savefiledialog_members.aspx

    単なる個人的な主観ですが、「(ファイル名が空白のときは)イベントも発生しない・戻り値もない」ことで
    「(暗黙的に)その状況はエラーである」とみなすという.NET側の仕様なのではないかと思います。
    Excel等はExcel等で、.NETは.NETで分けて考えた方がよいのかもしれません。。

記事No.23357 のレス /過去ログ44より / 関連記事表示
削除チェック/

■23366  Re[2]: SaveFileDialogのファイル名が空白だったとき
□投稿者/ やじゅ -(2008/08/13(Wed) 10:42:06)
>
    2008/08/13(Wed) 10:43:12 編集(投稿者)

    > ■No23357 (クー さん) に返信
    >

    簡単には出来ないですね、Excelは保存ボタンが無効になったけど、
    VB2008では無効にはなってなかったり・・・

    ぐりぐりやれば出来るかもしれませんので、メモ的にリンクしておきます。

    コモンダイアログの拡張
    http://msdn.microsoft.com/en-us/library/ms996463.aspx
記事No.23357 のレス /過去ログ44より / 関連記事表示
削除チェック/

■23420  Re[3]: SaveFileDialogのファイル名が空白だったとき
□投稿者/ クー -(2008/08/14(Thu) 11:23:52)
    カドルドエグ さん 
    やじゅさん

    ご回答ありがとうございます。
    ダイアログの拡張は避けたいので、仕様としてそのままにしておくことになりました。

    ありがとうございました!
記事No.23357 のレス / END /過去ログ44より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -