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

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

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

No.33901 の関連記事表示

<< 0 >>
■33901  クラスライブラリについて
□投稿者/ nam -(2009/03/12(Thu) 19:16:19)

    分類:[VB.NET/VB2005 以降] 

    いつもお世話になっています。

    早速質問なのですが、
    今回初めてVB2008でクラスライブラリを作成することになりました。

    現在プロト作成中なのですが、
    1つ悩んでいる部分があります。

    クラスライブラリにボタンを配置し、
    参照したフォームにクラスライブラリを配置します。

    この時、フォーム側でクラスライブラリのボタンが
    押されたことをハンドルすることはできるのでしょうか?

    --クラスライブラリの中身--
    Public Class UserControl1
    Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
    Handles Button1.Click
    MessageBox.Show("test")
    End Sub
    End Class
    --------------------------

    配置したフォーム側でこの"Button1_Click"を取得したいのです。

    よろしくお願いします。
親記事 /過去ログ59より / 関連記事表示
削除チェック/

■33903  Re[1]: クラスライブラリについて
□投稿者/ Jitta on the way -(2009/03/12(Thu) 19:20:38)
    No33901 (nam さん) に返信
    > いつもお世話になっています。
    >
    > 早速質問なのですが、
    > 今回初めてVB2008でクラスライブラリを作成することになりました。
    >
    > 現在プロト作成中なのですが、
    > 1つ悩んでいる部分があります。
    >
    > クラスライブラリにボタンを配置し、
    > 参照したフォームにクラスライブラリを配置します。
    >
    > この時、フォーム側でクラスライブラリのボタンが
    > 押されたことをハンドルすることはできるのでしょうか?
    >
    > --クラスライブラリの中身--
    > Public Class UserControl1
    この辺でイベント宣言して
    > Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
    > Handles Button1.Click
    > MessageBox.Show("test")
    この辺りでハンドラーを呼び出してやる
    > End Sub
    > End Class
    > --------------------------
    >
    > 配置したフォーム側でこの"Button1_Click"を取得したいのです。
    >
    > よろしくお願いします。
    >


    詳しいことは MSDN ライブラリ を参照してから。
記事No.33901 のレス /過去ログ59より / 関連記事表示
削除チェック/

■33904  Re[1]: クラスライブラリについて
□投稿者/ オショウ -(2009/03/12(Thu) 20:24:52)
    > クラスライブラリにボタンを配置し、
    > 参照したフォームにクラスライブラリを配置します。

      整理しましょう!

      まず、クラスには、ボタンと言うコントロ−ルを配置できません。

      よって・・・
      1. クラスにWinFormを内包させる
      2. クラスからイベントを受け取るような仕組みとするようにする

      どちらでしょうか?
      何等かの処理の『終わり』をイベントとする為のものと推測します
      が、その場合、メッセージボックスでも代用は可能です。

      それをあくまでクラスとして綺麗に実装したいのであれば、イベント
      になろうかと。

      行いたいことを明確にすれば、実装も自ずと決まると思いますが。

    以上。

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

■33905  Re[2]: クラスライブラリについて
□投稿者/ オショウ -(2009/03/12(Thu) 21:56:49)
    追伸・・・

    ユーザーコントロールのクラスもありますネ!
    そういう意味では、そのコントロールのクラスをフォームに
    貼れば、イベントを設けられます。

    以上。
記事No.33901 のレス /過去ログ59より / 関連記事表示
削除チェック/

■33917  Re[3]: クラスライブラリについて
□投稿者/ nam -(2009/03/13(Fri) 09:02:54)
    Jitta on the wayさん、オショウさん

    返信ありがとうございます。
    やりたことをまとめると、
    今までVB6でMDIフォームを使ってUIの統一をしていました。
    VB2008ではMDIを使用して同じことがうまく実装できないので
    ユーザクラスを使ってUIを統一させようということになりました。

    ユーザクラスには、
    メッセージを表示するラベル部分と共通ボタンを配置して
    あとは共通の関数を実装したいと考えています。

    まずはJitta on the wayさんのおっしゃられたとおり
    MSDNライブラリを参照してみます。
記事No.33901 のレス /過去ログ59より / 関連記事表示
削除チェック/

■33921  Re[4]: クラスライブラリについて
□投稿者/ はつね -(2009/03/13(Fri) 10:29:03)
>
    No33917 (nam さん) に返信
    > 今までVB6でMDIフォームを使ってUIの統一をしていました。
    > VB2008ではMDIを使用して同じことがうまく実装できないので
    > ユーザクラスを使ってUIを統一させようということになりました。

    Windowsフォームクラスの派生クラスつくればいいと思いますよ。
    大まかな流れ

    1.クラスライブラリプロジェクトを作成する。
    2.初期生成されているクラスファイルを削除する。
    3.Windowsフォームを新規追加する
    4.必要な.NET Frameworkクラスライブラリの参照設定を追加する。
    5.新規追加したWindwosフォームに共通デザイン部分の部分を配置する。
    6.必要なコードを記述する
    7.DLLとしてビルドする
    8.新規プロジェクトを作成する
    9.新規プロジェクトのWindowsフォームでInheritsをSystem.Windows.Formsではなく7でビルドしたものにする
記事No.33901 のレス /過去ログ59より / 関連記事表示
削除チェック/

■33923  Re[5]: クラスライブラリについて
□投稿者/ nam -(2009/03/13(Fri) 11:23:01)
    Jitta on the wayさん、オショウさん、はつねさん

    多くのご助言ありがとうございました。
    MSDNライブラリを確認して、
    実装方法を変更して解決しました。

    WidowsコントロールライブラリでDLLを作成する方法を試していたのですが、
    プロジェクトにユーザコントロールを追加する方法に変更しました。
    同じプロジェクト内にあるのでデバッグ等もやりやすくなり、
    悩んでいたことも解決できました。

    参考にしたページ
    http://msdn.microsoft.com/ja-jp/library/3sf86w5h(VS.80).aspx

    ご助言をくださった方々ありがとうございました。
記事No.33901 のレス / END /過去ログ59より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -