Data Standard の .xaml ファイルは、Data Standard ダイアログを作成する基本コンポーネントで構成されます。基本コンポーネントには、グリッド(Grid)、コンボ ボックス(ComboBox)、ラベル(Label)、テキスト ボックス(TextBox)、ボタン(Button)などがあります。オートデスクでは、これらのコンポーネントを理解してから、独自の Data Standard ダイアログをカスタマイズまたは作成することをお勧めします。
グリッド(Grid)は、行と列の表構造のすべてをコントロールするレイアウト パネルです。セルは、行と列の組み合わせで一意になります。すべてのセルには、ラベルやテキスト ボックスなどのコントロールを複数含めることができます。
これがグリッドの基本構造です。グリッドには、Grid.RowDefinition 部で定義する複数の行が必要ですHeight の値を 30 に指定した場合、高さの値が固定され、指定後は変更できません。値を "auto" に指定した場合、行の高さが動的になり、コントロールに応じて、厚くなったり薄くなります。同じ値が列の幅に適用されます。
行と列を定義したら、ラベルやテキスト ボックスなどのコントロールを追加できます。コントロールは、Grid.Column と Grid.Row の 2 つのプロパティでアタッチする必要があります。これらのプロパティは、グリッド内のコントロールの位置を定義します。最初の行には 0、2 番目の行には 1 というように順次指定します。
ラベル(Label)は、編集不可の単純なフィールド名です。ラベルには、何のラベルかを示すテキストを指定します。このテキストを基に、ユーザは対応するテキスト ボックスやコンボ ボックスにどのようなタイプの値を挿入する必要があるかを把握できます。たとえば、Comments というラベルを空のテキスト ボックスの横に配置したとします。この場合、ユーザはテキスト ボックスにコメントを入力することを把握できます。
Label には Content プロパティがあります。このプロパティは、ラベルに表示するテキストです。
<Label Grid.Row ="0" Grid.Colum="0" Content="sample" />
テキスト ボックス(TextBox)は編集可能なフィールドです。ユーザはテキスト ボックスに何らかの値を入力できます。Data Standard は入力値を読み取り、他の処理に使用することができます。
<TextBox Grid.Row="0" Grid.Column="0" Text="{Binding Prop[State].Value}" Name="testtextfield" />
コンボ ボックス(ComboBox)は、編集不可のフィールドですが、ユーザは既存のオプションの一覧から値を直接選択することができます。設定すると、この値を抽出して後で処理することができます。
<ComboBox Name="MaterialCombo" Text="{Binding Prop[Cost].Value}" Grid.Column="3" Grid.Row="6" ItemsSource="{Binding Prop[Cost].ListValues}"/>
ボタン(Button)は、ユーザが検索や保存などのイベントを簡単にトリガできるユーザ インタフェース要素です。
ボタンでは Command プロパティが必要です。このプロパティは、ボタンがトリガされたときにどのアクションが実行されるかを識別します。
これらのコンポーネントのいずれかを使用して、Vault のファイル プロパティを変更するには、"{Binding Prop[cost].Value}" を理解する必要があります。バインドを行うことで、Vault のファイル プロパティに含める値をマッピングできます。たとえば、テキスト ボックスのテキストを Vault の Cost プロパティにバインドした場合、このテキスト ボックスに何かの値が入力されるたびに、Vault で Cost プロパティが自動的に更新されます。バインドは、プロパティの変更を自動化する優れた方法です。このため、エンド ユーザが行う作業も少なくなります。
Prop [ ]
Prop[ ]は、バインドに不可欠な関数です。この関数を使用すると、Vault 内のファイルのプロパティにアクセスできます。たとえば、テキスト ボックスを Engineer プロパティにマッピングする場合は、<TextBox text="{Binding Prop[Engineer].Value}"/> と記述します。テキスト ボックスが作成されると、Prop[ ]はこのプロパティの値を返します。テキスト ボックスが更新されるたびに、マッピングされているファイル プロパティに新しい値が記述されたことが Prop[ ]関数に通知されます。