MENU

コンテナの横幅をユーザーが自由に変更可能にする

イメージは以下の通りです。

コンテナ内のスライダーを動かすと、

その値に応じてコンテナの幅が可変します

ユーザーにとっての最適幅はユーザーによって異なります。
コンテナに格納する内容が可変して問題ない場合は、こちらの設定方法がWinWinじゃないかなと思います。

【注意】モダンコントロールのみで作成しています

STEP

水平コンテナを用意

まずはコンテナを横並びにするための、水平コンテナを挿入します。
コントロール名は適当に ScreenContainer1 とでも。

LayoutWrap を false にして、垂直コンテナの折り返しを防ぎます。

STEP

垂直コンテナを挿入

イメージ図通りに、垂直コンテナを2つ入れます。
コントロール名は以下の通り

左:ctrVertical_left
右:ctrVertical_right

STEP

スライダーを挿入

図では垂直コンテナの中に入れていますが、場所はどこでも良いです。

コントロール名は SliderWidth とでも。

STEP

スライダーの設定

SliderWidth の設定を以下のようにします。

Max 100

Min 5
※0でも良いですが、0にしたときコンテナが非表示状態になるため、戻す設定が別に必要です

Width

Parent.Width
STEP

左のコンテナの設定

スライダーで可変させるコンテナの設定は下記の通りです

Width

Parent.Width * SliderWidth.Value / 100

FillPortions 0

STEP

右のコンテナの設定

Width

設定しなくてもスライダーは問題なく稼働します。
ただ、右側コンテナの見栄えが崩れる可能性がありますので、100%幅の中から可変させる設定を加えた方が良いこともあります。

Parent.Width * (100 - SliderWidth.Value) / 100

以上で終了です。
1つのコンテナ幅の可変設定だけだったら簡単ですね

広告

目次