Home > C# > 目的別資料 > 地域設定

要素のために、自動サイズ調整を使用する

WPFのための地域設定の手引き Localization Guidance for WPF

原文

WPF Localization Guidance 「Rick StrahlとMichele Leroux Bustamante(2009年6月)」の和訳です。
地域設定の実装の参考にしてください。

関連ファイル

他の興味あるトピック Other Topics of Interest

下記は、いくつかのWPFの地域設定に関連した話題です。本記事のための議論と研究がされています。

要素のために、自動サイズ調整を使用する Use Autosizing for Elements

WPFが地域設定に関係で優れている1つの領域は、異なるカルチャのテキストサイズの変更に対応するために、どのようにレイアウトを処理するかということです。 ユーザーインターフェースを作成するとき、それは、多くの場合、割り当てられた空間に、さまざまな言語の静的なテキストに合わせて、十分な空間を割り当てることは困難です。 柔軟性があるユーザーインターフェースの鍵は、自動的にサイズを調整する要素を備えていることです。 それは、これらの異なるテキストサイズに対応するため、拡大、あるいは、縮小することができます。WPFの流れに基づくレイアウトは、 それを、寸法変更や、テキストの異なる寸法と幅を調整することができる、流れるようなユーザーインターフェース・レイアウトを容易に作成するために、 この処理を、先程の高機能なクライアント技術より、簡単に作成します。

ここに、自動的にサイズを最大に調整するための、いくつかのヒントがあります。:

Windows上でSizeToContent.WidthAndHeightを使用します。

この機能は、内側の要素の内容が拡大するとき、最初に読み込まれるとき、そのウィンドウの寸法が適切に調整されることを保証します。

可能なところで、固定されたWidthとHeightを回避します。

WPFに、内容を自動で流れるように動くことができるように、そして、それらの実際の長さの要素を寸法設定できる用に、どんな固定された幅と高さも使用することを回避します。 これは、使用できる場合は、自動サイズ設定を使用することを表します。 Canvasの内容を、拡大、縮小できない絶対位置と寸法で使用すること避けます。 そして、あなたのレイアウトを構成するために、代わりに自動的にサイズを調整するコンテナのどれかを使用します。

TextBlocksのTextWrappingを有効にします。

テキストが切り取られるのを避けるために、TextBlocksでTextWrappingをオンにします。 テキストをラップし、コンテナを調整し、ドキュメントを流れるように動かせるようにします。 コントロール全体で、均一なサイズ設定を作成するために、GridでSharedSizeGroupを使用します。 Grid ColumnDefinitionsは、SharedSizeGroupの割当てを可能にします。 それは、同じSharedSizeGroupに同じ寸法を割り当てられた、すべての列を作成します。 これは、ボタン・グループに、特に役に立ちます。それぞれのボタン場所は、同じ寸法を持つ必要があります。 そして、それでも、最も長い内容に合わせるために、十分長くしてください。

小さい要素を避けるために、MinWidthを使用します。

地域設定の間、私たちは、多くの場合、テキストについて、あまりに長くて、割り当てられた空間に合わせることができないか心配していますが、 ときどき、まさに、正反対のことが発生します。:あなたは、内容が、あまりに短くて、見苦しい見た目で終わります。 例えば、あなたが、ボタンの上に、AutosizingボタンとOkとCancelテキストを持っている場合、Okが、標準的なキャンセルボタンの幅と比べて、非常に短いので、 これらのボタンは、風変りに見えるでしょう。特にボタンは、MinWidthを使用して、 ドロップダウンとコンボボックスは、どんなレイアウト・コツも使わずに、標準的な要素に一貫性をもたらすことができます。 しかし、更に、より大きな内容を拡大し、必要に応じて、より大きな要素を作成できます。

このエントリーをはてなブックマークに追加

Home PC C# Illustration

Copyright (C) 2011 Horio Kazuhiko(kukekko) All Rights Reserved.
kukekko@gmail.com
ご連絡の際は、お問い合わせページのURLの明記をお願いします。
「掲載内容は私自身の見解であり、所属する組織を代表するものではありません。」