2011-12-23 79 views
0

我用2個網格行內的Label和Rectangle創建了一個UserControl。 我加了屬性WPF中的DependencyProperty和UserControl

<local:PlayerMiniImage SetText="Player 1" ... 

當我使用的屬性的屬性

public string SetText 
{ 
    get 
    { 
     return (string)GetValue(mLabel.ContentProperty); 
    } 
    set 
    { 
     SetValue(mLabel.ContentProperty, value); 
    } 
} 

使用,標籤的字體變化和矩形消失 有什麼想法?

+0

如何在的setText約束PlayerMiniImage? – 2011-12-23 14:44:55

回答

0

如果你定義一個用戶控件...

<UserControl x:Class="..."> 
    <Border> 
     <!-- ... --> 
    </Border> 
</UserControl> 

然後,一切都在它裏面,這裏Border,是Content,因此,如果你設置了ContentProperty一切都將被替換。


要設置標籤內容創建一個新的DP:

public static readonly DependencyProperty LabelContentProperty = 
    DependencyProperty.Register("LabelContent", typeof(object), typeof(MyUserControl), new UIPropertyMetadata(null)); 
public object LabelContent 
{ 
    get { return (object)GetValue(LabelContentProperty); } 
    set { SetValue(LabelContentProperty, value); } 
} 

並綁定標籤來:

<Label Content="{Binding LabelContent, RelativeSource={RelativeSource AncestorType=UserControl}}"/> 
相關問題