DependencyProperty.RegisterAttached メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
添付された依存関係プロパティを、プロパティのプロパティ名、プロパティの種類、所有者の種類、およびプロパティ メタデータに登録します。
static DependencyProperty RegisterAttached(winrt::hstring const& name, TypeName const& propertyType, TypeName const& ownerType, PropertyMetadata const& defaultMetadata);
public static DependencyProperty RegisterAttached(string name, System.Type propertyType, System.Type ownerType, PropertyMetadata defaultMetadata);
function registerAttached(name, propertyType, ownerType, defaultMetadata)
Public Shared Function RegisterAttached (name As String, propertyType As Type, ownerType As Type, defaultMetadata As PropertyMetadata) As DependencyProperty
パラメーター
- name
-
String
winrt::hstring
登録する依存関係プロパティの名前。
型参照としてのプロパティの型 (System.Type for Microsoft .NET、Visual C++ コンポーネント拡張機能の TypeName ヘルパー構造体 (C++/CX))。
依存関係プロパティを型参照として登録している所有者型 (System.Type for Microsoft .NET、Visual C++ コンポーネント拡張機能 (C++/CX) の TypeName ヘルパー構造体)。
- defaultMetadata
- PropertyMetadata
プロパティ メタデータ インスタンス。 これには PropertyChangedCallback 実装参照を含めることができます。
戻り値
クラスのパブリック静的読み取り専用フィールドの値を設定するために使用する必要がある依存関係プロパティ識別子。 その後、その識別子は、プログラムで値を設定したり 、Binding をアタッチしたりするなどの操作のために、添付プロパティを後で参照するために使用されます。
例
この例では、 DependencyObject から派生するクラスを定義し、識別子フィールドと共に添付プロパティを定義します。 このクラスのシナリオは、他の UI 要素が XAML で設定できる添付プロパティを宣言するサービス クラスであり、サービスが実行時にそれらの UI 要素の添付プロパティ値に対して動作する可能性があるということです。 その他の例については、「 カスタム添付プロパティ」を参照してください。
public abstract class AquariumServices : DependencyObject
{
public enum Buoyancy {Floats,Sinks,Drifts}
public static readonly DependencyProperty BuoyancyProperty = DependencyProperty.RegisterAttached(
"Buoyancy",
typeof(Buoyancy),
typeof(AquariumServices),
new PropertyMetadata(Buoyancy.Floats)
);
public static void SetBuoyancy(DependencyObject element, Buoyancy value)
{
element.SetValue(BuoyancyProperty, value);
}
public static Buoyancy GetBuoyancy(DependencyObject element)
{
return (Buoyancy)element.GetValue(BuoyancyProperty);
}
}
Public Class AquariumServices
Inherits DependencyObject
Public Enum Buoyancy
Floats
Sinks
Drifts
End Enum
Public Shared ReadOnly BuoyancyProperty As DependencyProperty = _
DependencyProperty.RegisterAttached(
"Buoyancy", _
GetType(Buoyancy), _
GetType(AquariumServices), _
New PropertyMetadata(Buoyancy.Floats))
Public Sub SetBuoyancy(element As DependencyObject, value As Buoyancy)
element.SetValue(BuoyancyProperty, value)
End Sub
Public Function GetBuoyancy(element As DependencyObject) As Buoyancy
GetBuoyancy = CType(element.GetValue(BuoyancyProperty), Buoyancy)
End Function
End Class