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

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 発言ランク ファイル一覧 検索 過去ログ

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

記事リスト ( )内の数字はレス数
UpDateCSVファイルから指定行を1行削除したい(2) | NomalDataGridView内での集計行追加を行いたい(6) | Nomal【VB.net】特殊なキーのコードとイベント(3) | Nomal「 No33447 の投稿について、質問があります」# webbrowserでjqueryのイベントを発生させたい(3) | Nomalwebbrowserでjqueryのイベントを発生させたい(7) | NomalVB.NETでの TCPClient通信をByteのみでしょうか?(3) | Nomal仮想デスクトップのスクリーンキャプチャ(Windows10, C#)(0) | NomalVB.netでPDF-XChange Viewerの印刷設定(2) | NomalExcel オートメーションエラーとなってしまう(1) | NomalPictureBoxで動画を2回目に表示させる際に0除算エラーが起きる。(0) | NomalListViewに動画ファイルのサムネイルを表示する(2) | NomalPictureBoxに動画を表示させた後に静止画を表示させる(3) | Nomal非同期デリゲートとスレッドプール(2) | NomalフォームのボタンがONと同じようにスイッチONでも動作させたい(0) | Nomal複数の図形を重ねて描画するには(4) | NomalSNSへ自動投稿したい(2) | Nomal外部アプリケーションのアクティブ化(0) | Nomal「UDP」65535byteを超える画像データの送信(4) | Nomal画像の中心で回転させたい(3) | NomalPLCとの通信PGMの設計(1) | Nomalディスプレイの認識番号を求めたい(8) | NomalListViewの画像のドラッグアンドドロップ(14) | NomalMaskedTextBoxに丸囲み数字が入力できない(2) | NomalFTPにてリモート サーバーがエラーを返しました: (550) (1) | Nomalエンターキーでのコントロール移動(4) | Nomalメッセージの表示(1) | NomalThreading.Threadで戻り値を取得したい(8) | NomalPOSTとブラウザで動きが違うのはなぜでしょう?(6) | NomalUIスレッド使用中のBeginInvoke(5) | NomalForm起動時の例外スローが発生する原因が知りたい(1) | NomalASP.NET(VB.NET)でMapHubsを利用したい(2) | NomalForm1内のForm2でのTextBox入力がうまくいかない(6) | NomalnpgsqlでのExecuteScalarとExecuteReaderの扱いについて(2) | Nomalすきーむ りすと(2) | Nomalユーザーコントロールで自作のBackColorプロパティを使いたい(3) | NomalDataGridViewのRowLeaveのキャンセルについて(1) | Nomalプロパティウィンドウのカスタマイズ(2) | NomalCSV出力時に対象データバイト数+crlfの2バイト分のNull文字が出力される(4) | NomalIE11のダウンロード通知バーの保存を押したい(2) | Nomalmagick.net c# PDFの総ページ数取得(2) | NomalレジストリCLSIDの検索(4) | Nomalウィルスバスターについての質問(2) | NomalVB6からC#への変換時のエラー(1) | Nomal文字列配列からCheckedListBoxにチェック適用(4) | NomalC# Excelの列名の取得(3) | NomalWinサービスのサービス名をconfig化したい(1) | Nomalバッチで最新の環境変数を取得したい(4) | NomalWin7で開発したソフトがWin10で動かない(2) | Nomalテキストボックスのプロパティno(2) | NomalInternet Explorer Webページ保存のデフォルトフォルダ(1) | NomalASP.NETでネットワーク接続が切れた場合(0) | Nomalvb.net複数行入力テキストでのRETURNでの改行ができない(6) | Nomal中国語OSのFrameworkインストール画面の文字化け(1) | NomalExcelファイル内の画像取り込み(2) | NomalC# npgsqlでの動作(2) | Nomalコンボボックス継承で独自フォームの表示(1) | Nomalあらゆる例外がTargetInvocationExceptionで出力される。(5) | NomalListViewのページは指定できるのでしょうか?(ASP.NETではありません)(2) | Nomal追加したイベントハンドらが動かない。(2) | Nomalマルチディスプレイ環境で任意のモニターに描画したい(5) | NomalC#からのメール送信エラー(2) | Nomalメールの送信結果通知(2) | NomalVS2015,C#・・・別アプリ起動IEの表示ページのURL取得は?(4) | NomalVS2015のListViewにて、行挿入されない(2) | NomalVB.NETからエクセル(アクティブセル)への画像挿入(4) | NomalPowerShellで文字列を変数に変換したい(8) | NomalVisual Studio 2015 のビルドエラー表示のタイミング(2) | Nomalダウンキャストの実装を簡潔に記述したい(3) | Nomal(C#)BitArray同士の比較(1) | Nomalカスタムページサイズでの印刷(0) | Nomalフォームの表示位置を揃えたい(4) | Nomalユーザーコントロールをツールバーに表示できない(6) | Nomalforループの並列化とUI操作について(1) | NomalSQLをVBでUAC有効未昇格ClickOnceで操作したい(2) | NomalVB6 + Windows7 処理がおちる(3) | NomaltoolStripContainerの中でtoolStrip同士を重ねたい(1) | Nomal画像を見ていただき使っているどのコントローラーが使われているのか教えてください。(3) | Nomal外部アプリのマウスクリック無効化について。(2) | NomalDataGridViewにおいたComboBoxの表示(4) | Nomaldllのパス(6) | NomalVS2015 Express インストール時のエラー(3) | Nomalvb.netでの彩度調整(5) | Nomalカスタムコントロール作成について(2) | Nomalfor文について(超初心者向け)(0) | Nomal【お知らせ】ファイルアップロード機能の停止等、変更を行いました(1) | Nomalデータグリッドビューのセル内テキストの部分選択(2) | Nomalフォームを連続表示後、最後のフォームをアクティブにしたいが出来ないのです(0) | NomalWebページのWebClient取得が失敗する(1) | NomalWebAPIがうまいこと動きません(0) | NomalPanel上のDataGridviewにてタブ移動時のScrollイベント取得について(2) | NomalDBの数値型カラムのサイズを取得する方法(2) | Nomalチェックボックスでチェックしたものだけをツリービューの階層通りにコピーしたい(6) | NomalSleepの使い方(2) | Nomalドキュメントアウトラインでの要素移動(2) | Nomal背景が透明のアニメGIFを作成したい(3) | NomalWebBrowserのopener.location.hrefの値取得(1) | Nomal検索結果を任意のタイミングで元フォームに知らせる(4) | NomalEclipseのrun as とopen with web browser(0) | NomalDaTaGidViewに入力されたデータの反映方法(0) | Nomalイベントハンドラ内でのメソッド呼び出し(2) |



■記事リスト / ▼下のスレッド
■33779 / 親記事)  CSVファイルから指定行を1行削除したい
□投稿者/ でん 一般人(1回)-(2018/01/15(Mon) 19:57:32)
  • アイコン環境/言語:[C#] 
    分類:[.NET] 

    テキストファイルから1行削除する
    https://dobon.net/vb/dotnet/file/edittextfile.html

    //最後の1行を削除する
    lines = lines.Take(lines.Length - 1).ToArray();
    //最初の1行を削除するなら、次のようにする
    //lines = lines.Skip(1).ToArray();

    ↑上記ページの行削除を選択行のみ削除にしたいです。
    3行目のみ削除したい場合、
    lines = lines.Skip(3)のように記載すると、
    上から3行目までが削除されてしまいます。

    よろしくお願いいたします。
違反を報告
引用返信

▽[全レス2件(ResNo.1-2 表示)]
■33780 / ResNo.1)  Re[1]: CSVファイルから指定行を1行削除したい
□投稿者/ Azulean 大御所(491回)-(2018/01/15(Mon) 22:39:44)
  • アイコンNo33779に返信(でんさんの記事)
    > 3行目のみ削除したい場合、
    > lines = lines.Skip(3)のように記載すると、
    > 上から3行目までが削除されてしまいます。

    LINQ にこだわるなら、

    lines.Take(2).Concat(lines.Skip(3)).ToArray()

    というように「先頭 2 行」と「3 行飛ばした 4行目から」を連結すれば良いことになります。
違反を報告
引用返信
■33782 / ResNo.2)  Re[1]: CSVファイルから指定行を1行削除したい
□投稿者/ 魔界の仮面弁士 大御所(1102回)-(2018/01/16(Tue) 13:56:06)
  • アイコンNo33779に返信(でんさんの記事)
    > 3行目のみ削除したい場合、
    > lines = lines.Skip(3)のように記載すると、
    > 上から3行目までが削除されてしまいます。

    // 3 行目だけを削除する場合
    lines = lines.Where((_, i) => i != 2).ToArray();


    // 3 行目と 6 行目を削除対象とする場合
    // int[] removeLines = { 2, 5 };
    // lines = lines.Where((_, i) => !removeLines.Contains(i)).ToArray();


    ※インデックスは 0 始まりなので、3 行目を指定する場合は「2」を指定します。
違反を報告
引用返信

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



■記事リスト / ▼下のスレッド / ▲上のスレッド
■33768 / 親記事)  DataGridView内での集計行追加を行いたい
□投稿者/ タロウ 一般人(1回)-(2018/01/08(Mon) 12:58:07)
  • アイコン環境/言語:[VB.NET] 
    分類:[.NET] 

    質問失礼します。
    DataGridViewにLinqのクエリ結果をDataSourceとして表示しているものがあるのですが、それに対して、項目ごとの小計行を挿入し、最終行には総合計を表示したいと考えています。

    DataGridViewに対してループ処理で行を追加しようとすると、バインドされているのでプログラムから行追加を行えない、というエラーが帰ります。

    以下の様な表を
    aaa,bbb,10
    aaa,bbb,20
    bbb,aaa,10
    bbb,aaa,20

    を以下の様にしたいです。
    aaa,bbb,10
    aaa,bbb,20
    aaaの小計,,30
    bbb,aaa,10
    bbb,aaa,20
    bbbの小計,,30
    総合計,60

    以上よろしくお願いいたします。
違反を報告
引用返信

▽[全レス6件(ResNo.2-6 表示)]
■33773 / ResNo.2)  Re[2]: DataGridView内での集計行追加を行いたい
□投稿者/ タロウ 一般人(3回)-(2018/01/09(Tue) 20:15:40)
  • アイコンNo33770に返信(魔界の仮面弁士さんの記事)
    > ■No33768に返信(タロウさんの記事)
    魔界の仮面弁士さんありがとうございます。

    > デーバインド時に行挿入する場合は、DataSource 側を加工するように
    > してみてください。(Linq 側で小計行を作成するようにするということ)
    Linq側で小計行を作成するという処理が分からないので、今後の為に具体的に教えていただきたいです。

    > Linq にするのが難しい場合は、ToList してから加工して
    > それを再バインドする形でも良いかと思います。
    今回はこちらで実装しました。

    Linqで小計行と総計行を挿入する方法をよろしければ教えて下さい。
違反を報告
引用返信
■33774 / ResNo.3)  Re[3]: DataGridView内での集計行追加を行いたい
□投稿者/ 魔界の仮面弁士 大御所(1098回)-(2018/01/10(Wed) 04:44:24)
  • アイコンNo33773に返信(タロウさんの記事)
    >>デーバインド時に行挿入する場合は、DataSource 側を加工するように
    >>してみてください。(Linq 側で小計行を作成するようにするということ)
    > Linq側で小計行を作成するという処理が分からないので、今後の為に具体的に教えていただきたいです。

    LINQ だと煩わしいかと思いますよ。この場合は、

    (1) Group By クエリ または GroupBy メソッドで小計行を生成
    (2) Aggregate クエリ または Sum メソッドで合計値を生成
    (3) 元のデータ集合に 1 と 2 を Concat メソッドで連結
    (4) Order By クエリ または OrderBy メソッドで並び順を調整して完成

    という流れになるかと思うので。

    同種の小計処理が幾度もある場合は、小計・合計行付きで Yield するための
    拡張メソッドを用意するのがスマートかも知れません。
違反を報告
引用返信
■33775 / ResNo.4)  Re[4]: DataGridView内での集計行追加を行いたい
□投稿者/ タロウ 一般人(5回)-(2018/01/10(Wed) 06:02:43)
  • アイコン魔界の仮面弁士さんありがとうございました。
    まだまだ勉強中の身なので、なかなかスマートなものは実装出来ませんが、頑張ってみます。
    お世話になりました。

解決済み!
違反を報告
引用返信
■33777 / ResNo.5)  Re[4]: DataGridView内での集計行追加を行いたい
□投稿者/ 魔界の仮面弁士 大御所(1100回)-(2018/01/10(Wed) 10:37:15)
  • アイコンNo33774に追記(魔界の仮面弁士の記事)
    >> Linq側で小計行を作成するという処理が分からないので、今後の為に具体的に教えていただきたいです。


    小計行、合計行を出力するサンプルを書いてみました。
    ※ VB2017 向けのコードです

    小計行はグルーピングごとに差し込まねばならないので、今回は
    イテレーターを使って For Each の合間に Yield する実装にしてみました。


    ''' <summary>
    ''' List(Of ) に対する小計サンプル
    ''' </summary>
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
      Dim source As New List(Of Tuple(Of String, String, Integer))()
      source.Add(Tuple.Create("aaa", "bbb", 10))
      source.Add(Tuple.Create("aaa", "bbb", 20))
      source.Add(Tuple.Create("bbb", "aaa", 10))
      source.Add(Tuple.Create("bbb", "aaa", 20))

      DataGridView1.DataSource = source

      Dim sample =
        Iterator Function()
          For Each subTotal In From g In source Group By g.Item1 Into Sum(g.Item3), Group
            For Each details In subTotal.Group
              Yield details
            Next
            Yield Tuple.Create($"{subTotal.Item1}の小計", "", subTotal.Sum)
          Next
          If source.Any() Then
            Yield Tuple.Create("総合計", "", Aggregate r In source Into Sum(r.Item3))
          End If
        End Function

      DataGridView2.DataSource = sample().ToArray()
    End Sub

    ''' <summary>
    ''' DataTable に対する小計サンプル
    ''' </summary>
    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
      Dim source As New DataTable()
      source.Columns.Add("Item1", GetType(String))
      source.Columns.Add("Item2", GetType(String))
      source.Columns.Add("Item3", GetType(Integer))

      source.Rows.Add("aaa", "bbb", 10)
      source.Rows.Add("aaa", "bbb", 20)
      source.Rows.Add("bbb", "aaa", 10)
      source.Rows.Add("bbb", "aaa", 20)

      DataGridView1.DataSource = source

      Dim sample =
        Iterator Function()
          For Each subTotal In From g In source Group By Item1 = g.Field(Of String)("Item1") Into Sum(g.Field(Of Integer)("Item3")), Group
            For Each details In subTotal.Group
              Yield details
            Next
            Dim subTotalRow = source.NewRow()
            subTotalRow("Item1") = $"{subTotal.Item1}の小計"
            subTotalRow("Item3") = subTotal.Sum
            Yield subTotalRow
          Next
          If source.Rows.Count > 0 Then
            Dim totalRow = source.NewRow()
            totalRow("Item1") = "総合計"
            totalRow("Item3") = Aggregate r In source Into Sum(r.Field(Of Integer)("Item3"))
            Yield totalRow
          End If
        End Function

      DataGridView2.DataSource = sample().CopyToDataTable()
    End Sub
違反を報告
引用返信
■33778 / ResNo.6)  Re[5]: DataGridView内での集計行追加を行いたい
□投稿者/ タロウ 一般人(6回)-(2018/01/10(Wed) 19:27:57)
  • アイコン魔界の仮面弁士様ありがとうございます。
    素晴らしいサンプルを作成していただきありがとうございます。
    今後、躓くことがあったらまた宜しくお願いします。
解決済み!
違反を報告
引用返信

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



■記事リスト / ▼下のスレッド / ▲上のスレッド
■33767 / 親記事)  【VB.net】特殊なキーのコードとイベント
□投稿者/ hiroro 一般人(1回)-(2018/01/08(Mon) 11:22:03)
  • アイコン環境/言語:[WIN10 64ビット VS2017 VB] 
    分類:[.NET] 

    まず、開発環境ですが、
    Windows 10
    visual studio 2017
    VB.net
    Windows Form アプリケーション

    マウスやキーボードは純正の物で、
    外部デバイスとしてSX-208とゆう
    イヤホンマイク?ヘッドセット?をBluetoothで付けてい
    ます。
    このヘッドセットには物理ボタンとして、
    多目的ボタンとゆう物が付いています。


    ここからが私のやりたい事ですが、
    この多目的ボタン(マルチファンクションボタン)のキーイベントを取得したいと考えています。

    このボタンですが、開発とは全く関係のないただメディアプレーヤーで音楽を再生が終わった後、もう一度再生させる事が出来たりします。

    私が試した内容は
    Formでのキーイベント
    Form上にWMPを設置し、その中でのキーイベント
    Form上にWMPを設置した場合は
    多目的ボタンを押しても
    もう一度再生はされませんでしたので、
    単純にCTRL+ Pを飛ばしてる訳ではなさそうでして。。。
    キーボードやマウス以外の外部機器の物理ボタンのキー系統のイベントを取得しようとした事がないので、困っています。

    WIN API辺りでは無いかとは思っているんですが、思った物が見つけれず、困っています。

    キーをいじれる機器を変えれば済む話だとは思いますが、イイ勉強の機会だと思いましたので、分かる方がいらっしゃいましたら、
    知恵を貸して頂ければと思います。
    よろしくお願いいたします。
違反を報告
引用返信

▽[全レス3件(ResNo.1-3 表示)]
■33769 / ResNo.1)  【報告】この投稿はマルチポストです
□投稿者/ (報告) 大御所(267回)-(2018/01/08(Mon) 20:33:59)
  • アイコンこの投稿はマルチポストです。もし元記事の投稿者にマルチポストの心当たりがない場合は、すぐに返信でお知らせください。

    ●マルチポストされている場所
    http://bbs.wankuma.com/index.cgi?mode=al2&namber=86255

    ----------
    この掲示板ではマルチポストが禁止されています。詳しくは、「書き込みのルールについて」をお読みください。

    ●書き込みのルールについて
    https://dobon.net/vb/bbs/index.html
違反を報告
引用返信
■33771 / ResNo.2)  Re[2]: 【報告】この投稿はマルチポストです
□投稿者/ hiroro 一般人(2回)-(2018/01/09(Tue) 18:58:22)
  • アイコン> ●マルチポストされている場所
    > http://bbs.wankuma.com/index.cgi?mode=al2&namber=86255
    上記のが違反になるのを理解していませんでした。

    iPhoneからは
    上記URLの書き込みが編集しか出来ませんでしたので、
    内容とタイトルの削除を行いました。

    すみませんでした。
解決済み!
違反を報告
引用返信
■33772 / ResNo.3)  Re[1]: 【VB.net】特殊なキーのコードとイベント
□投稿者/ 魔界の仮面弁士 大御所(1097回)-(2018/01/09(Tue) 19:35:12)
  • アイコンNo33771に返信(hiroroさんの記事)

    先に指摘のあった
    >> 「書き込みのルールについて」をお読みください。
    >> https://dobon.net/vb/bbs/index.html
    には、このように書かれていたかと思います。

    ========
    解決していない質問のスレッドを「解決済み」にしないでください。
    ========

    長文であるがゆえに、把握仕切れなかったものと推察しますが、
    下記の 2 項を再読の上、次回以降、ご留意ください。

    https://dobon.net/vb/bbs/index.html#multipost
    https://dobon.net/vb/bbs/index.html#replypost



    本題に戻って:

    No33767に返信(hiroroさんの記事)
    > 外部デバイスとしてSX-208とゆう

    メーカーはどこでしょうか?

    「SX-208」で Google ってみましたが、
    四駆用タイヤチェーンの型番がヒットするのみで、
    該当製品を見つけることができませんでした…。


    > この多目的ボタン(マルチファンクションボタン)のキーイベントを取得したいと考えています。

    もし、SPP が掴めるようなら、AT コマンドのテキストメッセージが
    やり取りされているかもしれません。


    > Formでのキーイベント

    キーボード扱いとなるのは、HID プロファイルの場合かと思います。

    モノラル音声のマイク付きヘッドセットなら、HSP (Headset Profile)、
    電話などの発信・着信機能も付与されている場合は、HFP (Hands-Free Profile)、
    ステレオ音声なら、A2DP (Advanced Audio Distribution Profile)が
    使われているようです。
    https://pc.watch.impress.co.jp/docs/2005/0607/pda43.htm

    とりあえず、HFP の仕様であればこのあたり。
    https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=292287


    あるいは nuget あたりで何かしらのライブラリを探してみるとか。

    目的を果たせるかどうかまでは分かりませんが、有名どころだと
    32feet.NET というものがあったりします。
    https://32feet.codeplex.com/
    https://github.com/inthehand/32feet/wiki/General-Bluetooth-Data-Connections
違反を報告
引用返信

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



■記事リスト / ▼下のスレッド / ▲上のスレッド
■33762 / 親記事)  「 No33447 の投稿について、質問があります」# webbrowserでjqueryのイベントを発生させたい
□投稿者/ C#びぎなー 一般人(3回)-(2017/12/23(Sat) 17:07:54)
  • アイコン環境/言語:[環境(Windows 7 64bit )、使用言語(C# 等) Visual studio 2017] 
    分類:[.NET] 

    (「 No33447 の投稿について、質問があります」


    魔界の仮面弁士 様

    お世話になっております。

    C#(Visual studio 2017)のWebBrowserかつIE11の環境で開発をしております。


    本件同様の問題にぶつかり調べていると
    本サイトの「「 No33447 の投稿」に辿り着きました。

    C#かつIE11 モードでイベントを発生させたい場合
    どのように実装すればよろしいでしょうか。

    お忙しいところ申し訳ございません。

    C#での開発が今回初めて勉強不足でおはずかしい限りではございますが
    ご教授くださいますようよろしくお願いいたします。

違反を報告
引用返信

▽[全レス3件(ResNo.1-3 表示)]
■33763 / ResNo.1)  Re[1]: 「 No33447 の投稿について、質問があります」# webbrowserでjqueryのイベントを発生させたい
□投稿者/ Azulean 大御所(490回)-(2017/12/23(Sat) 20:03:42)
  • アイコン2017/12/23(Sat) 20:06:23 編集(投稿者)

    No33762に返信(C#びぎなーさんの記事)
    > 魔界の仮面弁士 様

    名指しで質問するのはやめておきませんか?
    ここは特定個人に対して尋ねる場ではありませんし、名指しされた側の負担になりますので。


    > C#かつIE11 モードでイベントを発生させたい場合
    > どのように実装すればよろしいでしょうか。

    VB.NET のコードが示されているので C# に読み替えていくだけだとは思いますが、
    COM を遅延バインディングを使った経験ないと難しいかもしれませんね。

    SelectElement.GetElementsByTagName("option").Item(2).SetAttribute("selected", "True")
    → SelectElement.GetElementByTagName("option")[2].SetAttribute("selected", "True");

    Dim doc = WebBrowser1.Document.DomDocument
    → dynamic doc = WebBrowser1.Document.DomDocument;

    Dim evt = CallByName(doc, "createEvent", CallType.Method, "HTMLEvents")
    → dynamic evt = doc.createEvent("HTMLEvents");

    CallByName(evt, "initEvent", CallType.Method, "change", True, False)
    → evt.initEvent("change", true, false);

    SelectElement.InvokeMember("dispatchEvent", evt)
    System.Runtime.InteropServices.Marshal.ReleaseComObject(evt)
    System.Runtime.InteropServices.Marshal.ReleaseComObject(doc)
    →これらはそのままのはず。末尾にセミコロンは必要ですが。
違反を報告
引用返信
■33764 / ResNo.2)  Re[2]: 「 No33447 の投稿について、質問があります」# webbrowserでjqueryのイベントを発生させたい
□投稿者/ C#びぎなー 一般人(4回)-(2017/12/23(Sat) 20:36:23)
  • アイコン
    Azulean 様

    ご指摘、ありがとうございます。

    プログラムの内容をお教え頂く以前に
    私の知識、確認不足でご迷惑をおかけして誠に申し訳ございませんでした。

    またこのような質問に対してご回答まで頂きまことにありがとうございます。

    ご教示頂きましたコードの反映ができておりませんが
    まずはお礼まで。


違反を報告
引用返信
■33766 / ResNo.3)  Re[3]: 「 No33447 の投稿について、質問があります」# webbrowserでjqueryのイベントを発生させたい
□投稿者/ C#びぎなー 一般人(5回)-(2017/12/27(Wed) 11:41:30)
  • アイコンAzulean 様 管理人 様

    この度はご迷惑をおかけし申し訳ございませんでした。

    お教え頂きました遅延バインディングを使った方法にて
    イベントを発生させることができました。

    問題が解決ができ無事に年を越せそうです。
    大変ありがとうございました。
解決済み!
違反を報告
引用返信

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



■記事リスト / ▲上のスレッド
■33445 / 親記事)  webbrowserでjqueryのイベントを発生させたい
□投稿者/ しろろん 一般人(1回)-(2016/08/12(Fri) 13:01:49)
  • アイコン環境/言語:[VB.NET] 
    分類:[.NET] 

    webbrowserで下記htmlページを読み込み、.netでセレクトボックスの値を変更していますが、jqueryのイベントが発火しません。
    jqueryのイベントを動作させるためにはどうすればいいのでしょうか?

    なお、jqueryを使わないJavascriptの場合はイベントが発生します。
    どうぞよろしくお願いいたします。


    -------------------------
    <html>
    <head>
    <script src="http://code.jquery.com/jquery.min.js"></script>

    <script type="text/javascript">

    $(function() {
    $("#sb").change(function() {
    alert("change!");
    });
    });

    </script>
    </head>
    <body>

    <form>
    <select id="sb">
    <option>1</option>
    <option>2</option>
    <option>3</option>
    </select>
    </form>

    </body>
    </html>
    -------------------------

    Dim SelectElement As HtmlElement = WebBrowser1.Document.GetElementById("sb")

    SelectElement.GetElementsByTagName("option").Item(2).SetAttribute("selected", "true")
    SelectElement.RaiseEvent("onChange")
違反を報告
引用返信

▽[全レス7件(ResNo.3-7 表示)]
■33448 / ResNo.3)  Re[3]: webbrowserでjqueryのイベントを発生させたい
□投稿者/ しろろん 一般人(2回)-(2016/08/12(Fri) 17:22:47)
  • アイコンNo33447に返信(魔界の仮面弁士さんの記事)

    返信ご丁寧にありがとうございました!

    ご推測の通り
    FEATURE_BROWSER_EMULATIOでIE11に設定していました。
    IE10モードではjqueryも動作したため、今回はIE10モードで行くことにします。

    どうもありがとうございました!!

解決済み!
違反を報告
引用返信
■33759 / ResNo.4)  Re[3]: webbrowserでjqueryのイベントを発生させたい
□投稿者/ C#びぎなー 一般人(1回)-(2017/12/22(Fri) 16:42:50)
  • アイコンNo33447に返信(魔界の仮面弁士さんの記事)
    > ■No33446に追記(魔界の仮面弁士の記事)
    >>FEATURE_BROWSER_EMULATION が設定されていないでしょうか?
    >

    >
    >
    > IE11 モードでイベントを発生させたいのであれば、
    > IEventTarget.dispatchEvent を用いる必要があります。
    > https://msdn.microsoft.com/en-us/library/ff975826.aspx
    >
    > 残念ながらマネージ版 WebBrowserでは、
    > この機能がカプセル化されていないようなので、
    > IE11 モードの場合、少々面倒なコーディングが必要になります。
    >
    > SelectElement.GetElementsByTagName("option").Item(2).SetAttribute("selected", "True")
    >
    > Dim doc = WebBrowser1.Document.DomDocument
    > Dim evt = CallByName(doc, "createEvent", CallType.Method, "HTMLEvents")
    > CallByName(evt, "initEvent", CallType.Method, "change", True, False)
    > SelectElement.InvokeMember("dispatchEvent", evt)
    > System.Runtime.InteropServices.Marshal.ReleaseComObject(evt)
    > System.Runtime.InteropServices.Marshal.ReleaseComObject(doc)


    魔界の仮面弁士 様

    お世話になっております。

    C#のWebBrowserかつIE11の環境で開発をしております。


    本件同様の問題にぶつかり調べていると
    本サイトに辿り着きました。

    C#かつIE11 モードでイベントを発生させたい場合
    どのように実装すればよろしいでしょうか。

    お忙しいところ申し訳ございません。

    C#での開発が今回初めて勉強不足でおはずかしい限りではございますが
    ご教授くださいますようよろしくお願いいたします。

違反を報告
引用返信
■33760 / ResNo.5)  【お願い】新しいスレッドでご投稿ください
□投稿者/ 管理人 大御所(1529回)-(2017/12/23(Sat) 03:04:22)
  • アイコンNo33759に返信(C#びぎなーさんの記事)

    ルール違反という訳ではありませんが、新しい質問は別のスレッドをたてていただいた方が分かりやすいと思いますので、お手数ですが、上部メニューの「新規作成」からもう一度投稿していただけないでしょうか?その際は、不要な引用は削除してください(「 No33447 の投稿について、質問があります」のような感じで結構です)。

    さらに、ご利用のC#のバージョン(dynamic型が使えるか)を書いていただけると、より良い結果が得られるかもしれません。

    もし「書き込みのルールについて」をまだお読みでない場合は、まずお読みいただいてから、ご投稿ください。

    なおこの投稿への返信は必要ありません。

    よろしくお願いいたします。
解決済み!
違反を報告
引用返信
■33761 / ResNo.6)  Re[5]: 【お願い】新しいスレッドでご投稿ください
□投稿者/ C#びぎなー 一般人(2回)-(2017/12/23(Sat) 17:01:55)
  • アイコン管理人 様


    ご指摘の新規にスレッドをたてる旨承知しました。

    私の該当記事を削除しようとしましたが
    「エラー : 返信の付いている記事は削除できません。」
    と表示され、削除できませんでした。

    ご迷惑をお掛けし申し訳ございませんでした。

違反を報告
引用返信
■33765 / ResNo.7)  Re[6]: 【お願い】新しいスレッドでご投稿ください
□投稿者/ 管理人 大御所(1530回)-(2017/12/24(Sun) 02:24:48)
  • アイコン2017/12/24(Sun) 02:40:21 編集(投稿者)

    No33761に返信(C#びぎなーさんの記事)

    前回の投稿で「返信不要」とさせていただいたのは、「解決済み」が消えてしまうのを防ぐ目的がありました。今度こそは、返信しないでください。

    なお投稿が削除できない理由は、「書き込みのルールについて」にありますので、必ずお読みください。

    追記:C#びぎなーさんが、 No33762 に新規ご投稿いただいたことを追記します。
解決済み!
違反を報告
引用返信

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






Mode/  Pass/

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 発言ランク ファイル一覧 検索 過去ログ

- Child Tree -

2018/01/16(Tue) 14:29:57 に作成されたキャッシュを表示しています。
生のデータを表示する | キャッシュを最新にする