Silverlight-固定レイアウト
コントロールのレイアウトは、アプリケーションの使いやすさにとって非常に重要で重要です。これは、アプリケーション内のGUI要素のグループを配置するために使用されます。レイアウトパネルを選択する際に考慮すべき重要なことがいくつかあります。彼らは-
- 子要素の位置。
- 子要素のサイズ。
- 重なり合う子要素を互いに重ねます。
アプリケーションが異なる画面解像度で使用されている場合、コントロールの固定ピクセル配置は機能しません。XAMLは、GUI要素を適切な方法で配置するための豊富な組み込みレイアウトパネルのセットを提供します。
まず、 simple fixedレイアウト。次に、DynamicSilverlightがサポートするように設計したレイアウトシナリオ。すべてのユーザーインターフェイス要素に浸透するレイアウト関連のプロパティと概念を確認します。
固定レイアウト
最も単純な種類のレイアウトは、 Canvas素子。ザ・Canvas パネルは基本的なレイアウトパネルであり、左、右、上、下など、キャンバスの任意の側を基準にした座標を使用して子要素を明示的に配置できます。
通常、 Canvas2Dグラフィック要素(楕円、長方形など)に使用されます。XAMLアプリケーションのサイズ変更、ローカライズ、またはスケーリング時に絶対座標を指定すると問題が発生するため、UI要素には使用されません。
以下に一般的に使用されるものを示します properties の Canvas クラス。
シニア番号 | プロパティと説明 |
---|---|
1 | Background パネルのコンテンツ領域を埋めるブラシを取得または設定します。(パネルから継承) |
2 | Children このパネルの子要素のUIElementCollectionを取得します。(Panelから継承されます。) |
3 | Height 要素の推奨高さを取得または設定します。(FrameworkElementから継承されます。) |
4 | ItemHeight WrapPanel内に含まれるすべてのアイテムの高さを指定する値を取得または設定します。 |
5 | ItemWidth WrapPanel内に含まれるすべてのアイテムの幅を指定する値を取得または設定します。 |
6 | LogicalChildren このPanel要素の論理的な子要素を反復できる列挙子を取得します。(Panelから継承されます。) |
7 | LogicalOrientation パネルが一次元のみのレイアウトをサポートしている場合の、パネルの向き。(Panelから継承されます。) |
8 | LeftProperty Canvas.LeftXAML添付プロパティを識別します。 |
9 | Margin 要素の外側マージンを取得または設定します。(FrameworkElementから継承されます。) |
10 | Name 要素の識別名を取得または設定します。この名前は、イベントハンドラーコードなどのコードビハインドが、XAMLプロセッサーによる処理中にマークアップ要素が構築された後にマークアップ要素を参照できるようにするための参照を提供します。(FrameworkElementから継承されます。) |
11 | Orientation 子コンテンツが配置されるディメンションを指定する値を取得または設定します。 |
12 | Parent この要素の論理的な親要素を取得します。(FrameworkElementから継承されます。) |
13 | Resources ローカルで定義されたリソースディクショナリを取得または設定します。(FrameworkElementから継承されます。) |
14 | Style この要素がレンダリングされるときに使用されるスタイルを取得または設定します。(FrameworkElementから継承されます。) |
15 | TopProperty Canvas.TopXAML添付プロパティを識別します。 |
16 | Width 要素の幅を取得または設定します。(FrameworkElementから継承されます。) |
17 | ZIndexProperty Canvas.ZIndexXAML添付プロパティを識別します。 |
以下に一般的に使用されるものを示します methods の Canvas。
シニア番号 | 方法と説明 |
---|---|
1 | GetLeft ターゲット要素のCanvas.LeftXAML添付プロパティの値を取得します。 |
2 | GetTop ターゲット要素のCanvas.TopXAML添付プロパティの値を取得します。 |
3 | GetZIndex ターゲット要素のCanvas.ZIndexXAML添付プロパティの値を取得します。 |
4 | SetLeft ターゲット要素のCanvas.LeftXAML添付プロパティの値を設定します。 |
5 | SetTop ターゲット要素のCanvas.TopXAML添付プロパティの値を設定します。 |
6 | SetZIndex ターゲット要素のCanvas.ZIndexXAML添付プロパティの値を設定します。 |
次の例は、子要素をに追加する方法を示しています。 Canvas。以下は、さまざまなオフセットプロパティを使用してCanvas内に楕円が作成されるXAML実装です。
<UserControl x:Class = "FirstExample.MainPage"
xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d = "http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable = "d"
d:DesignHeight = "300" d:DesignWidth = "400">
<Grid x:Name = "LayoutRoot" Background = "White">
<Canvas Width = "380" Height = "280" >
<Ellipse Canvas.Left = "30" Canvas.Top = "30"
Fill = "Gray" Width = "200" Height = "120" />
</Canvas>
</Grid>
</UserControl>
上記のコードをコンパイルして実行すると、次の出力が表示されます。