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

わんくま同盟

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

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

■95986 / 親階層)  フォーム初期化時にTableLayoutPanelを取得でき
□投稿者/ 半角 (1回)-(2020/10/14(Wed) 17:44:09)

分類:[.NET 全般] 

VB2015を使っております。

TableLayoutPanel1をフォーム上に配置します。

この状態で、


    Public Sub Form6_Imaging_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        Dim Heights = TableLayoutPanel1.GetRowHeights
        Dim Widths = TableLayoutPanel1.GetColumnWidths

    End Sub


を実行すると、TableLayoutPanel1のWidthやHeightを取得することができます。

一方で、なぜかTableLayoutPanel1のいずれかのセルにPictureBoxを配置した状態で、
上記のコードを実行すると、
WidthもHeightもLength=0となっており、
値を取得することができません。

ただし、一度フォームのロードが終わった後は取得できるようになります。

更に、なぜか、PictureBoxに加えて、Labelを追加すると、
また取得可能なようになります。

これって一体どういう仕様なのでしょうか?

PictureBoxしか入っていない状態で、
フォームのロード時に、
WidthやHeightを取得するにはどうすれば良いですか?

編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
親記事 →Re[1]: フォーム初期化時にTableLayoutPanelを取得でき /半角
→Re[1]: フォーム初期化時にTableLayoutPanelを取得でき /WebSurfer
 
上記関連ツリー

フォーム初期化時にTableLayoutPanelを取得でき / 半角 (20/10/14(Wed) 17:44) #95986 ←Now
Re[1]: フォーム初期化時にTableLayoutPanelを取得でき / 半角 (20/10/15(Thu) 21:40) #96013
│└ Re[2]: フォーム初期化時にTableLayoutPanelを取得でき / Hongliang (20/10/15(Thu) 22:45) #96014
Re[1]: フォーム初期化時にTableLayoutPanelを取得でき / WebSurfer (20/10/16(Fri) 09:08) #96015
  └ Re[2]: フォーム初期化時にTableLayoutPanelを取得でき / 半角 (20/10/16(Fri) 15:36) #96021 解決済み

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信