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

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

C# と VB.NET の入門サイト

Re[3]: FORMの継承クラス作成について


(過去ログ 62 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■36002 / inTopicNo.1)  FORMの継承クラス作成について
  
□投稿者/ 歩兵 (1回)-(2009/05/18(Mon) 02:33:17)

分類:[.NET 全般] 

formクラス
Private a as new form2
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.KeyDown
    a.sub1(sender, e) <-----form2クラスへ
End Sub
End Sub

form2クラス
Public Class form2
Inherits System.Windows.Forms.Form
Public Sub sub1(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
If TypeOf Me.ActiveControl Is TextBox
 ・
   ・
End IF
End sub
↑form側ではMe.ActiveControlに値が入ってる。form2ではMe.ActiveControl はNothing なのです。
なぜNothing なのでしょうか?
引用返信 編集キー/
■36004 / inTopicNo.2)  Re[1]: FORMの継承クラス作成について
□投稿者/ επιστημη (1937回)-(2009/05/18(Mon) 06:06:57)
επιστημη さんの Web サイト
> ↑form側ではMe.ActiveControlに値が入ってる。form2ではMe.ActiveControl はNothing なのです。
> なぜNothing なのでしょうか?

Form2がActiveではないんじゃ?

引用返信 編集キー/
■36006 / inTopicNo.3)  Re[2]: FORMの継承クラス作成について
□投稿者/ 歩兵 (2回)-(2009/05/18(Mon) 09:37:00)
Inherits System.Windows.Forms.Form
でformクラスを継承してるのですが
引用返信 編集キー/
■36011 / inTopicNo.4)  Re[3]: FORMの継承クラス作成について
□投稿者/ επιστημη (1938回)-(2009/05/18(Mon) 12:15:35)
επιστημη さんの Web サイト
2009/05/18(Mon) 12:38:11 編集(投稿者)
> Inherits System.Windows.Forms.Form
> でformクラスを継承してるのですが

継承してるのですが...それで?

using System;

class Base {
  private int number_;
  public int Number {
    get { return number_; }
    set { number_ = value; }
  }
}

class Form1 : Base {
  public Form2 child = new Form2();
  
  public static void Main(string[] args) {
    Form1 f1 = new Form1();
    f1.Number = 123;
    Console.WriteLine("Form1.Number = {0}", f1.Number);
    Console.WriteLine("Form2.Number = {0}", f1.child.Number);
  }
}

class Form2 : Base {}

--- 実行結果 ---
Form1.Number = 123
Form2.Number = 0

同じ値が返ってくると思ってました?

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -