PropertyMap.Item[String] 屬性

定義

取得或設定指定屬性的 PropertyTranslator 委派。

public:
 property System::Windows::Forms::Integration::PropertyTranslator ^ default[System::String ^] { System::Windows::Forms::Integration::PropertyTranslator ^ get(System::String ^ propertyName); void set(System::String ^ propertyName, System::Windows::Forms::Integration::PropertyTranslator ^ value); };
public System.Windows.Forms.Integration.PropertyTranslator this[string propertyName] { get; set; }
member this.Item(string) : System.Windows.Forms.Integration.PropertyTranslator with get, set
Default Public Property Item(propertyName As String) As PropertyTranslator

參數

propertyName
String

要對應的屬性名稱。

屬性值

PropertyTranslator

對應至 propertyName 所指定之屬性的 PropertyTranslator 委派。

例外狀況

propertyNamenull 或空字串;指定的 PropertyTranslator 委派為 null

SourceObject 中沒有 propertyName 指定的屬性。

範例

下列程式碼範例示範如何擷 BackColorPropertyTranslator 控制項之 屬性的 ElementHost 委派。

// The ExtendBackColorMapping method adds a property
// translator if a mapping already exists.
private void ExtendBackColorMapping()
{
    if (elemHost.PropertyMap["BackColor"] != null)
    {
        elemHost.PropertyMap["BackColor"] += 
            new PropertyTranslator(OnBackColorChange);
    }
}

// The OnBackColorChange method assigns a specific image 
// to the hosted element's Background property.
private void OnBackColorChange(object h, String propertyName, object value)
{
    ElementHost host = h as ElementHost;
    System.Windows.Controls.Button wpfButton = 
        host.Child as System.Windows.Controls.Button;

    ImageBrush b = new ImageBrush(new BitmapImage(
        new Uri(@"file:///C:\WINDOWS\Santa Fe Stucco.bmp")));
    wpfButton.Background = b;
}
' The ExtendBackColorMapping method adds a property
' translator if a mapping already exists.
Private Sub ExtendBackColorMapping()

    If elemHost.PropertyMap("BackColor") IsNot Nothing Then

        elemHost.PropertyMap("BackColor") = PropertyTranslator.Combine( _
            elemHost.PropertyMap("BackColor"), _
            PropertyTranslator.CreateDelegate( _
            GetType(PropertyTranslator), _
            Me, _
            "OnBackColorChange"))
    End If

End Sub


' The OnBackColorChange method assigns a specific image 
' to the hosted element's Background property.
Private Sub OnBackColorChange( _
ByVal h As Object, _
ByVal propertyName As String, _
ByVal value As Object)

    Dim host As ElementHost = h
    Dim wpfButton As System.Windows.Controls.Button = host.Child
    Dim b As New ImageBrush(New BitmapImage( _
        New Uri("file:///C:\WINDOWS\Santa Fe Stucco.bmp")))
    wpfButton.Background = b

End Sub

下列程式碼範例示範如何擷 BackgroundPropertyTranslator 控制項之 屬性的 WindowsFormsHost 委派。

// The ExtendBackgroundMapping method adds a property
// translator if a mapping already exists.
private void ExtendBackgroundMapping()
{
    if (wfHost.PropertyMap["Background"] != null)
    {
        wfHost.PropertyMap["Background"] += new PropertyTranslator(OnBackgroundChange);
    }
}

// The OnBackgroundChange method assigns a specific image 
// to the hosted control's BackgroundImage property.
private void OnBackgroundChange(object h, String propertyName, object value)
{
    WindowsFormsHost host = h as WindowsFormsHost;
    System.Windows.Forms.CheckBox cb = host.Child as System.Windows.Forms.CheckBox;
    ImageBrush b = value as ImageBrush;

    if (b != null)
    {
        cb.BackgroundImage = new System.Drawing.Bitmap(@"C:\WINDOWS\Santa Fe Stucco.bmp");
    }
}
' The ExtendBackgroundMapping method adds a property
' translator if a mapping already exists.
Private Sub ExtendBackgroundMapping() 
    If wfHost.PropertyMap("Background") IsNot Nothing Then

        wfHost.PropertyMap("Background") = PropertyTranslator.Combine( _
        wfHost.PropertyMap("Background"), _
        PropertyTranslator.CreateDelegate( _
            GetType(PropertyTranslator), _
            Me, _
            "OnBackgroundChange"))
    End If

End Sub


' The OnBackgroundChange method assigns a specific image 
' to the hosted control's BackgroundImage property.
Private Sub OnBackgroundChange(ByVal h As Object, ByVal propertyName As String, ByVal value As Object) 
    Dim host As WindowsFormsHost = h 
    Dim cb As System.Windows.Forms.CheckBox = host.Child 
    Dim b As ImageBrush = value 
    
    If Not (b Is Nothing) Then
        cb.BackgroundImage = New System.Drawing.Bitmap("C:\WINDOWS\Santa Fe Stucco.bmp")
    End If

End Sub

備註

當設定時,如果 不存在 PropertyTranslator propertyName ,則會將新的委派新增至 PropertyMapPropertyTranslator如果 已存在 , propertyName 則會加以取代。

適用於

另請參閱