DOBON.NETプログラミング道掲示板

■ 「新規作成」から投稿できます。
■ マルチポストされた投稿を見つけたときは、その投稿に返信することによりご報告ください。その際は匿名で投稿し、マルチポストされている場所を併記してください。
■ スパム対策のため、メールアドレスの先頭に"_"という文字が付加されています。
RSS 2.0 RSS 2.0 | RSS 0.91 | 携帯電話用 | 自分専用のアイコンを使用するには | 掲示板への要望 | 管理人に連絡 | お気楽掲示板
■ 24時間以内に作成されたスレッドは New で表示されます。
■ 24時間以内に更新されたスレッドは UpDate で表示されます。

記事リスト ( )内の数字はレス数
NomalChart X軸上の描画を切り替えたい(0) | NomalRichTextBoxへのドラッグ&ドロップしたExcelファイルの扱い(3) | Nomal特定のPCだけ発生する「パディングは無効なので削除できません」のエラーの原因(6) | NomalASP.NET WebApi内でXmlReader.Create(url)がタイムアウトする(4) | NomalDatagridViewでファンクションキーを止めたい(5) | Nomal表示動作が重くなる(3) | Nomalbitmapを複数スレッドで処理したい(2) | NomalLoadOptionのパラメータの意味(3) | Nomalフォーム背景のみを半透明にしたい(5) | Nomal読み出し元フォームの位置取得方法(2) | Nomalコンストラクターに続く{}の意味(2) | Nomal1行で書くことできますか?(3) | NomalCommandBuilderによって作られるCommandTextの内容(5) | Nomalvb.netで7zの圧縮・解凍をしたい。(2) | NomalC# NASでのプログレスバー有りのコピー(0) | Nomal正規表現で文字の繰り返しパターン(4) | NomalDataViewのFindRowsde(7) | NomalNPOIでのエクセル編集で期待通りに書き込めません(2) | NomalDataGridのSetDataBindingに代わるもの?(3) | NomalFormのサイズ変更で掴める辺を制限したい(2) | NomalVSTOとWebView2の共存って可能?(3) | Nomalビデオ圧縮のコーデック(2) | NomalWindowsMediaPlayerで次のURLを指定しても反映されない。(3) | Nomal"−"を縦書きにしたい(9) | Nomal.NET6.0 のWinFormにWPFのユーザーコントロールを配置したい(4) | NomalDataGridViewの列にコンボボックスを表示する(2) | Nomalデータグリッドビューの特定の列ヘッダの色(2) | NomalVB-Report10→11への移行(4) | Nomal入力値を元に描画させたい(2) | Nomalデフォルトプリンタの用紙向き変更(0) | NomalpictureBoxとlabelの重ね合わせ(2) | NomalASP.net デバッグ時の .js ファイルの変更が反映されない(1) | NomalVBで開いたExcelでのイベントを取得するには(4) | NomalWindowsエクスプローラへのドロップ先フォルダの取得(4) | NomalデザイナでSystemColorsのような色一覧から選択できるようにしたい(0) | NomalVisualStudio2019 以降の検索ダイアログが正常に動作しない(2) | NomalTaskの入れ子の待ち方2(4) | NomalTaskの入れ子の待ち方(5) | NomalUsingの使い方が間違っている?(4) | Nomal//./の意味は?(2) | Nomalバイナリーファイルの結合と分解(2) | NomalDataGridViewの特定セルにボタンを配置する方法(3) | Nomal表の最後の行の下にDropできない(1) | NomalCookieの勉強を始めました。(2) | Nomal複数のPageに分かれる場合のスクレ―ピング(6) | NomalDataGridViewのセル結合部分にボタンを表示する方法(3) | NomalTask.Runの使い方(4) | Nomalランダムファイルを高速化させたい(5) | NomalPictureBox のサイズを設定する(2) | NomalProcessクラスMainModuleプロパティでアクセス拒否(3) | NomalLINQでControlsをEnable=Falseに設定(3) | Nomalプロセス間の通信(相互)(2) | NomalC#をVBに変換する方法が分かりません(1) | NomalPictureBoxに動的に画像を表示する(1) | NomalYahooのHPで、検索文字の入力ができない(3) | NomalWebView2のEncodeの問題?(5) | NomalWinFormでChromeをSeleriumで操作しているが、Closeの仕方(2) | NomalWinformでのDataGridView Comboboxのデータ追加削除が出来ない(3) | Nomal印刷部数の固定(1) | Nomalプログラムについて。(2) | Nomal拡張子関連付けのサンプルで削除時 例外発生(1) | Nomalユーザーコントロールをフォームで使用した時のエラー(6) | NomalマルチページTIFFをSelectActiveFrameでページ指定するとエラーが発生する(12) | Nomal画像の大きさを取得するには(4) | Nomalファイルがドライブ内で占有する容量(3) | NomalC#FormのXボタンイベントで、e.Cancel が使えない(2) | NomalAxWindowsMediaPlayerでプレイリストの途中から再生するには(2) | NomalWebView2でJavaScriptの実行の終了イベント(4) | NomalDataTableのDataRowVersion毎のInt型値の比較がうまくいかない(5) | NomalGPTかMBRを判断したい(2) | Nomalアセンブリ言語について。(1) | Nomalマクロについて。(3) | Nomalアセンブリ言語について。(20) | Nomalコーディングについて。(3) | NomalDLL内のスレッドからイベントを発行すると、受信したフォームでラベルが更新できない(3) | Nomal Parallel.Forで思ったより早くならない(5) | NomalForm1イベントの選択が出来なくなりました。(9) | Nomalシステムコールについて。(2) | NomalDataAdapterで2回目のUpDateが出来ない(6) | NomalAngleSharp.Scripting.JavaScriptの使い方(2) | Nomalデザーナー時の継承先formのサイズ(0) | Nomalコンソールではなくテキストボックスに文字列を出力したい(7) | NomalAngleSharpのクエリー文2(4) | Nomaldll修正時、それを参照しているexeのリビルド要否(2) | Nomalデフォルトプロパティを使いたい(6) | NomalAngleSharpのクエリー文(2) | Nomalテキストボックスでの制御(7) | Nomal二次元配列内の文字の置き換え(3) | NomalUSBカメラをピクチャボックスに表示(3) | Nomalcolor型を引数にする方法(2) | NomalEndConnectでのエラー(2) | NomalVSプロジェクト作成方法の違いによる、プラグイン機能を持つアプリケーションへの影響について(6) | Nomalボタンクリック時のLeaveイベントについて(1) | NomalInputボタンが押せない(4) | NomalWebBrowserのDocumentCompletedイベントの切り替え(3) | Nomalorder by で抽出したデータをDataTableに入れてForEachでDataRow取得した際の順番(2) | Nomalエクセルのデータを配列に読込んだ時の配列要素番号について(2) | Nomal非同期プログラミング時のConsole.WriteLineの動作(4) | NomalC#からストアドにDecimalを渡すと値が丸められる(4) | Nomalインスタンスの型を文字列で指定したい(2) |



■記事リスト / ▼下のスレッド
■35150 / 親記事)  Chart X軸上の描画を切り替えたい
□投稿者/ Masa 一般人(1回)-(2022/09/16(Fri) 14:33:07)
  • アイコン環境/言語:[Windows10 /Visual Studio 2019 C#/ .NetFramework4.8.04084] 
    分類:[.NET] 

    Chartコントロールで折れ線グラフを作成しています。
    X軸を黒色とします。
    pointsを(0,0)と(10,0)を指定し、X軸上に赤色で描画します。
    @X軸上の前面に赤色で表示する設定
    AX軸上に黒色のみ表示する設定(X軸のみ表示する設定)
    X軸上の描画を@とAで切り替えたいと考えています。

    上記2点の設定方法を教えて下さい。よろしくお願いします。
違反を報告
引用返信



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35144 / 親記事)  RichTextBoxへのドラッグ&ドロップしたExcelファイルの扱い
□投稿者/ うっきー 一般人(1回)-(2022/08/30(Tue) 18:44:02)
  • アイコン環境/言語:[Windows10 C#.net] 
    分類:[.NET] 

    RichTextBoxにExcelファイルをそのまま貼り付けようとしています。

    AllowDrop=Trueにすると
    ドラッグ&ドロップで簡単に貼り付けることはできるのですが
    表示される名称が「Excelワークシート」のようになってしまいます

    このファイル名称を設定するにはどのようにすればよいでしょうか?
    よろしくお願いいたします。
182×117
イメージ
1661852642.png
/1KB
違反を報告
引用返信

▽[全レス3件(ResNo.1-3 表示)]
■35145 / ResNo.1)  Re[1]: RichTextBoxへのドラッグ&ドロップしたExcelファイルの扱い
□投稿者/ 魔界の仮面弁士 大御所(1449回)-(2022/08/30(Tue) 18:56:41)
  • アイコンNo35144に返信(うっきーさんの記事)
    > このファイル名称を設定するにはどのようにすればよいでしょうか?

    COM 版の RichTextBox を使ってみるとか。

    http://bbs.wankuma.com/index.cgi?mode=al2&namber=63101&KLOG=106
    http://rucio.cloudapp.net/ThreadDetail.aspx?ThreadId=10815
違反を報告
引用返信
■35146 / ResNo.2)  Re[2]: RichTextBoxへのドラッグ&ドロップしたExcelファイルの扱い
□投稿者/ うっきー 一般人(2回)-(2022/08/31(Wed) 10:52:41)
  • アイコン魔界の仮面弁士さん、早速のアドバイスありがとうございます!

    参考にさせていただきます。

    おそらく、ファイルそのものを添付する形ではなく
    リンクを登録する形で対応することになりそうです。
    (そもそも名前を設定することは難しいということにすらたどりつけなかったので助かりました)

    ありがとうございました。
違反を報告
引用返信
■35147 / ResNo.3)  Re[3]: RichTextBoxへのドラッグ&ドロップしたExcelファイルの扱い
□投稿者/ うっきー 一般人(3回)-(2022/08/31(Wed) 10:55:03)
  • アイコンチェックし忘れました・・・
    解決済とさせていただきます。
解決み!
違反を報告
引用返信

■記事リスト / レス記事表示 → [親記事-3]



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35135 / 親記事)  特定のPCだけ発生する「パディングは無効なので削除できません」のエラーの原因
□投稿者/ わっしー 一般人(1回)-(2022/08/24(Wed) 21:33:40)
  • アイコン環境/言語:[Windows10] 
    分類:[.NET] 

    インストーラーを作成して、社内の人に配布をして利用していただいております。
    100人以上の方に問題なく使っていただけてますか、1名だけ「パディングは無効なので削除できません」とエラーが発生します。
    アンインストール→インストールを何度か試していただきましたが改善せず
    再度インストーラーを作り直して、インストールしてみましたが改善できませんでした。

    コード内に暗号化/復号の処理があるため、そこでのエラーと思われますが、特定のPCだけで発生しているため、全く原因がわからない状態です。

    皆様にお力添えいただきたく、よろしくお願いいたします。
450×167 => 250×92
イメージ
1661344420.png
/16KB
違反を報告
引用返信

▽[全レス6件(ResNo.2-6 表示)]
■35138 / ResNo.2)  Re[2]: 特定のPCだけ発生する「パディングは無効なので削除できません」のエラーの原因
□投稿者/ 魔界の仮面弁士 大御所(1446回)-(2022/08/25(Thu) 02:12:25)
  • アイコンNo35137に追記(魔界の仮面弁士の記事)
    > 参考情報としてこのあたり。
    > https://social.msdn.microsoft.com/Forums/security/ja-JP/fbd89c41-0af8-4b1a-8106-fa9a69e4488b/24489214952127012395123881235612390?forum=vbgeneralja

    もう一つこの辺りの回答も。手前味噌ですが。
    http://bbs.wankuma.com/index.cgi?mode=al2&namber=78391&KLOG=133
違反を報告
引用返信
■35139 / ResNo.3)  Re[2]: 特定のPCだけ発生する「パディングは無効なので削除できません」のエラーの原因
□投稿者/ わっしー 一般人(2回)-(2022/08/26(Fri) 13:11:37)
  • アイコンNo35137に返信(魔界の仮面弁士さんの記事)

    ご回答ありがとうございます。
    URLを参照してパディングに意味がわかりました。

    暗号化/復号は下記のURLの内容をそのまま使用しています。
    https://dobon.net/vb/dotnet/string/encryptfile.html

    上記の方法の場合にご指摘いただいた理由でエラーになる可能性はございますでしょうか?

    エラー画面の詳細のキャプチャも添付させていただきます。

    恐れ入りますが、よろしくお願いいたします。

1184×160 => 250×33
イメージ
1661487093.png
/14KB
違反を報告
引用返信
■35140 / ResNo.4)  Re[3]: 特定のPCだけ発生する「パディングは無効なので削除できません」のエラーの原因
□投稿者/ 魔界の仮面弁士 大御所(1447回)-(2022/08/26(Fri) 15:00:58)
  • アイコンNo35139に返信(わっしーさんの記事)
    > エラー画面の詳細のキャプチャも添付させていただきます。
    Visual Basic をお使いのようですね。では VB の文法で回答します。


    > 暗号化/復号は下記のURLの内容をそのまま使用しています。
    > https://dobon.net/vb/dotnet/string/encryptfile.html
    そのページには複数の実装がありますよね…?
    今回はスタックトレースを貼って頂いたので、

    https://dobon.net/vb/dotnet/string/encryptfile.html#codecaption1
    Sub DecryptFile(sourceFile As String, destFile As String, key As Byte(), iv As Byte())

    ではなく

    https://dobon.net/vb/dotnet/string/encryptfile.html#codecaption5
    Sub DecryptFile(sourceFile As String, destFile As String, password As String)

    の方であることは分かりましたが、もう少し具体的に示して欲しかったです。
    (サイトでは Shared Sub になっていましたが、Module1 上なので Shared を外しているものと想像)


    ちなみに、.NET Core においては、RijndaelManaged クラスは非推奨とされており、
    かわりに Aes.Create メソッドを使うべきとアナウンスされていたりします。
    もっとも .NET Framework の場合は、 Obsolete にはなっていないのですけれどね。
    (AES と Rijndael の違いについては、ここでは触れずにおきます)

    一応念のため、.NET Framework バージョンも教えてください。


    > 上記の方法の場合にご指摘いただいた理由でエラーになる可能性はございますでしょうか?
    どうでしょうね。今ちょっと、検証やコードレビューする余裕が無いのです…。

    ただ、既定のパラメーターの場合、CBC の PKCS#7 パディングになっているはず。


    なのでひとまず、復号側の実装で、
     Dim rijndael As New System.Security.Cryptography.RijndaelManaged()
    の行を
     Dim rijndael As New System.Security.Cryptography.RijndaelManaged()
     rijndael.Padding = System.Security.Cryptography.PaddingMode.None
    に変更してみてください。


    本当にパディングだけの問題なら、復号後のファイルサイズは 16 の倍数バイトとなり、
    復号されたデータの末尾に最大 16 バイトのゴミデータが付与されるはずです。
    (末尾にゴミが付く点を除けば、暗号化は正しく解除されるはず)

    この末尾データは、16 の倍数に揃えるためのパディングデータであり、
    「末尾 16 バイトがすべて &H10」
    「末尾 15 バイトがすべて &H0F」
    「末尾 14 バイトがすべて &H0E」
    「末尾 13 バイトがすべて &H0D」
      :
      :
    「末尾 3 バイトがすべて &H03」
    「末尾 2 バイトがすべて &H02」
    「末尾 1 バイトが &H01」
    のいずれかになります。
    たとえば元が 0 バイトのファイルであった場合、復号したファイルは
    &H10 のみでパディングされた 16 バイトになるということです。


    もし、末尾が上記いずれのパターンでも無かった場合や、あるいは
    それでも途中でエラーになるようであれば、暗号化されたファイル
    もしくはパスワードのいずれかが破損している事を意味するでしょう。
違反を報告
引用返信
■35142 / ResNo.5)  Re[4]: 特定のPCだけ発生する「パディングは無効なので削除できません」のエラーの原因
□投稿者/ 魔界の仮面弁士 大御所(1448回)-(2022/08/26(Fri) 16:04:40)
  • アイコン2022/08/26(Fri) 16:05:59 編集(投稿者)

    No35140に追記(魔界の仮面弁士の記事)
    > それでも途中でエラーになるようであれば、暗号化されたファイル
    > もしくはパスワードのいずれかが破損している事を意味するでしょう。

    ファイルのサイズが「16 の倍数バイト」であるかどうかを確認する作業は
    『暗号化されたファイルのサイズ』と
    『Padding なしで複号した結果ファイル』の
    両方に対して行ってください。

    暗号データが 16 の倍数バイトでは無い場合は、
    暗号データ自体の破損を意味します。
違反を報告
引用返信
■35143 / ResNo.6)  Re[5]: 特定のPCだけ発生する「パディングは無効なので削除できません」のエラーの原因
□投稿者/ わっしー 一般人(3回)-(2022/08/26(Fri) 21:33:41)
  • アイコンNo35142に返信(魔界の仮面弁士さんの記事)
    > 2022/08/26(Fri) 16:05:59 編集(投稿者)

    ありがとうございます。

    .NET Frameworkはバージョン4.6になります。

    すみません、仰る通り、サイトの2つ目の方の暗号化/復号を利用しており
    Module1にPublic Sub で記載しており、別のForm部分から呼び出すようにしています。


     Dim rijndael As New System.Security.Cryptography.RijndaelManaged()
     rijndael.Padding = System.Security.Cryptography.PaddingMode.None
    に変更して、インストーラーを作成して、エラーが出ているPCで試してみます。

    私のPCではエラーはでないのですが、暗号化されているファイルは16の倍数バイトになっていました。
    エラーが出ているPCで、どうなっているかも確認してみます。


違反を報告
引用返信

■記事リスト / レス記事表示 → [親記事-6]



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35131 / 親記事)  ASP.NET WebApi内でXmlReader.Create(url)がタイムアウトする
□投稿者/ ぺんたごん 一般人(3回)-(2022/08/24(Wed) 15:26:59)
  • アイコン環境/言語:[C# .NET 4.6.x] 
    分類:[ASP.NET] 

    お世話になっております。
    
    表題のとおりですが、外部サーバ(https)のxmlファイルを読み込む
    ライブラリdllを作っています。
    これをWinFormsアプリから使用するとすんなり動くのですが
    ASP.NET WebApi2で作ったREST APIで使用すると
    かなり待った後タイムアウトします。
    →「リモート サーバーに接続できません(ry」
    
    開発環境はプロキシがあり、これを通さないと外部へ接続できないのですが
    WinFormsとWebApiとで動作が変わってしまうのは
    どうすれば対処できるのでしょうか。
    最近のググーるさんは指定した単語にちょっとでも引っかかると
    関係ない雑多な情報も全部拾って来るので苦戦してます。
    
    よろしくお願いいたします

違反を報告
引用返信

▽[全レス4件(ResNo.1-4 表示)]
■35132 / ResNo.1)  Re[1]: ASP.NET WebApi内でXmlReader.Create(url)がタイムアウトする
□投稿者/ 魔界の仮面弁士 大御所(1442回)-(2022/08/24(Wed) 16:20:59)
  • アイコンNo35131に返信(ぺんたごんさんの記事)
    > これをWinFormsアプリから使用するとすんなり動くのですが
    > ASP.NET WebApi2で作ったREST APIで使用すると

    プロキシ動作は検証したことがありませんが、.config の
     /configuration/system.net/defaultProxy
    の設定はどうなっていますか。( XmlReader.Create に影響するかは未確認 )

    特に設定していない場合、実行アカウントの OS 設定になるんじゃないかな…?

    WinForms はデスクトップ アカウントでの動作でしょうけれど、
    Web の方はそうではないでしょうし。
違反を報告
引用返信
■35133 / ResNo.2)  Re[2]: ASP.NET WebApi内でXmlReader.Create(url)がタイムアウトする
□投稿者/ ぺんたごん 一般人(4回)-(2022/08/24(Wed) 16:31:44)
  • アイコン返信ありがとうございます

    今回作ってるサービスのweb.configにはプロキシに関する設定は皆無です。
    インターネットオプションのプロキシ設定を引き継いでくれるものと思ってたのですが…

    こちらでもあれから調査を続けていて、
    IISのアプリケーションプールの動作するアカウントでインターネットオプションのプロキシ設定しておかないと
    あかん、という情報を見つけて、これはこれで有用なんですが
    今回VisualStudio+IIS Expressでのデバッグで
    現象が起きてるので、どうしたものかなと悩んでます。
    (この場合ログインしてるWindowsユーザで動作する気がしてます)

    もう少し調べてみます
違反を報告
引用返信
■35134 / ResNo.3)  Re[3]: ASP.NET WebApi内でXmlReader.Create(url)がタイムアウトする
□投稿者/ 魔界の仮面弁士 大御所(1443回)-(2022/08/24(Wed) 19:27:02)
  • アイコンNo35133に返信(ぺんたごんさんの記事)
    > 今回作ってるサービスのweb.configにはプロキシに関する設定は皆無です。
    web.config を設定してみた結果はどうでしたか?
    https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/network/defaultproxy-element-network-settings

    追加の認証が必要な場合はこちら。
    https://qiita.com/kazumeat/items/9c1d7c9f6bb1ffe0951e


    > インターネットオプションのプロキシ設定を引き継いでくれるものと思ってたのですが…
    web.config のプロキシ設定が優先されると思いますが、
    未設定時には OS のプロキシ設定が使われるでしょうね。

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
    HKEY_USERS\<何某>\Software\Microsoft\Windows\CurrentVersion\Internet Settings
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings

    https://win2012r2.com/2019/02/12/post-498/
    https://win2012r2.com/2022/05/24/configure-proxy-of-service-account/


    > 今回VisualStudio+IIS Expressでのデバッグで
    > 現象が起きてるので、どうしたものかなと悩んでます。
    UAC が有効な場合は、IIS Express を管理者として実行してみるとか…?

    ※当方未確認です
違反を報告
引用返信
■35141 / ResNo.4)  Re[4]: ASP.NET WebApi内でXmlReader.Create(url)がタイムアウトする
□投稿者/ ぺんたごん 一般人(5回)-(2022/08/26(Fri) 15:15:21)
  • アイコン
    No35134に返信(魔界の仮面弁士さんの記事)
    
    結局アレからは色々試す時間がなかったのですが、
    XmlReader.Createに直接urlを指定するのではなく
    
    var req = WebRequest.Create(url);
    req.Proxy = WebRequest.GetSystemWebProxy(); //これ重要
    var resp = req.GetResponse();
    var xml = XmlReader.Create(resp.GetResponseStream());
    
    で動きました(破棄処理などは省略してます)
    なぜこれをデフォ動作としといてくれないのか…
    よくわかりませんが、とりあえずいったん解決といたします
    
    ありがとうございました
    

解決み!
違反を報告
引用返信

■記事リスト / レス記事表示 → [親記事-4]



■記事リスト / ▲上のスレッド
■35125 / 親記事)  DatagridViewでファンクションキーを止めたい
□投稿者/ はる 一般人(9回)-(2022/08/23(Tue) 20:26:12)
  • アイコン環境/言語:[Windows10 C# ] 
    分類:[.NET] 

    いつもお世話になります。

    DataGridViewで行を選択し、ファンクションキーの「F4」を押したら
    行削除としているんですが、勝手に並び変わってしまいます。
    DataGridViewの既定のファンクションキーだとか。

    ヘッダクリックの並び替えは残したいのでSortModeは止めれません。

    ファンクションキーの動作を止めることはできませんか?
違反を報告
引用返信

▽[全レス5件(ResNo.1-5 表示)]
■35126 / ResNo.1)  Re[1]: DatagridViewでファンクションキーを止めたい
□投稿者/ Hongliang 大御所(632回)-(2022/08/23(Tue) 20:52:31)
  • アイコンhttps://docs.microsoft.com/ja-jp/dotnet/desktop/winforms/controls/default-keyboard-and-mouse-handling-in-the-windows-forms-datagridview-control
    こちらによれば、F4キーはコンボボックス列のセルを編集モードにしてドロップダウンを開く、という機能であり、ソートとは関係ないように見えます。
    実際簡単に試してみると、F4キーを押しても特にソート状態に変化はなく、コンボボックス列の場合は上記リンク先通りに編集モードに入ります。

    > DataGridViewの既定のファンクションキーだとか。
    こちらはどこからの情報でしょうか?
    作成されているアプリケーションにおけるF4キーの機能は、そのアプリケーションで作りこまれているものではないでしょうか。
違反を報告
引用返信
■35127 / ResNo.2)  Re[2]: DatagridViewでファンクションキーを止めたい
□投稿者/ はる 一般人(10回)-(2022/08/23(Tue) 21:07:47)
  • アイコンNo35126に返信(Hongliangさんの記事)
    > https://docs.microsoft.com/ja-jp/dotnet/desktop/winforms/controls/default-keyboard-and-mouse-handling-in-the-windows-forms-datagridview-control
    > こちらによれば、F4キーはコンボボックス列のセルを編集モードにしてドロップダウンを開く、という機能であり、ソートとは関係ないように見えます。
    > 実際簡単に試してみると、F4キーを押しても特にソート状態に変化はなく、コンボボックス列の場合は上記リンク先通りに編集モードに入ります。

    すいません、間違えました「F3」です。
    Form_KeyDownで記載しているF3の処理は実行されるんですが、
    おまけに並び替えもされてしまうので、これを止めたいんです。
違反を報告
引用返信
■35128 / ResNo.3)  Re[3]: DatagridViewでファンクションキーを止めたい
□投稿者/ Hongliang 大御所(633回)-(2022/08/23(Tue) 21:18:42)
  • アイコンイベントハンドラ中で
    e.Handled = true
    のようにすれば、既定の処理が行われなくなります。

    なお前掲のページにあるように、DataGridView自身のKeyDownイベントでは編集モードでのキー入力には対応できないのでご注意ください。
違反を報告
引用返信
■35129 / ResNo.4)  Re[4]: DatagridViewでファンクションキーを止めたい
□投稿者/ はる 一般人(11回)-(2022/08/23(Tue) 21:45:15)
  • アイコンNo35128に返信(Hongliangさんの記事)


    できました!ありがとうございました。

解決み!
違反を報告
引用返信
■35130 / ResNo.5)  Re[3]: DatagridViewでファンクションキーを止めたい
□投稿者/ 魔界の仮面弁士 大御所(1441回)-(2022/08/23(Tue) 22:49:26)
  • アイコンNo35127に返信(はるさんの記事)
    >>https://docs.microsoft.com/ja-jp/dotnet/desktop/winforms/controls/default-keyboard-and-mouse-handling-in-the-windows-forms-datagridview-control
    > すいません、間違えました「F3」です。
    > Form_KeyDownで記載しているF3の処理は実行されるんですが、
    > おまけに並び替えもされてしまうので、これを止めたいんです。

    .NET Framework 4.7.2 以降において、F3 で並び替えが行われるのを止めるために


    (1) F3 並び替えが行われない ".NET Framework 4.7.1 以下" を用いる
    (2) アプリケーションの構成ファイルの runtime/AppContextSwitchOverrides で
     4.7.2 以降のアクセシビリティの強化を無効化する
    (3) AppContext.SetSwitch メソッドで、4.7.2 以降のアクセシビリティの強化を無効化する

    という選択肢もありますね。
    http://rucio.cloudapp.net/ThreadDetail.aspx?ThreadId=30447


    もっとも今回の対応としては、 Hongliang さんが書かれているように
    e.Handled を使う方が良いでしょうね。
解決み!
違反を報告
引用返信

■記事リスト / レス記事表示 → [親記事-5]






Mode/  Pass/


- Child Tree -

2022/09/27(Tue) 07:10:42 に作成されたキャッシュを表示しています。
生のデータを表示する | キャッシュを最新にする