2個元素我有用戶控件這樣的:設置可見真或假的使用依賴屬性
它是頭的用戶控制,我使用這個控制幾頁,
<Grid>
<TextBlock Grid.Column="1" Style="{StaticResource PuzzleTalkHeader}" Text="{Binding Path=LocalizedResources.GlobalApplicationTitle, Source={StaticResource LocalizedStrings}}" Grid.ColumnSpan="2"/>
<Image x:Name="imgCoin" Grid.Column="3" Height="24" Width="24" Source="/Assets/Images/Coin.png" />
<TextBlock x:Name="tbxEarnPoints" Grid.Column="5" Text="15000"/>
</Grid>
我想設置一個屬性是這樣的:isVisibleEarnPoints="True"
<UserControls:Header Grid.Row="0" isVisibleEarnPoints="True"/>
如果isVisibleEarnPoints="True"
的話,我想imgCoin
和tbxEarnPoints
應visiable和我f它是假的,那麼這些元素隱藏
我想這樣的事情,但我不能得到的結果,你能幫助我嗎?
public partial class Header : UserControl
{
public Header()
{
InitializeComponent();
}
//public bool isVisiableEarnPoints
//{
// set
// {
// if(value)
// {
// imgCoin.Visibility = Visibility.Visible;
// tbxEarnPoints.Visibility = Visibility.Visible;
// }
// else
// {
// imgCoin.Visibility = Visibility.Collapsed;
// tbxEarnPoints.Visibility = Visibility.Collapsed;
// }
// }
//}
public int isVisiableEarnPoints { get; set; }
public static readonly DependencyProperty DisplayTypeProperty = DependencyProperty.Register("isVisiableEarnPoints", typeof(isVisiableEarnPoints), typeof(Header), new PropertyMetadata(YourDPCallBack));
private static void YourDPCallBack(DependencyObject instance, DependencyPropertyChangedEventArgs args)
{
Header control = (Header)instance;
}
}
}
更新提問按照註釋:
[1]:
public partial class Header : UserControl
{
public Header()
{
InitializeComponent();
}
private bool _isisVisiableEarnPoints;
public bool isVisiableEarnPoints
{
get{
return _isisVisiableEarnPoints;
}
set
{
_isisVisiableEarnPoints=value;
}
}
}
,然後結合該屬性是這樣的:
<Image x:Name="imgCoin" Grid.Column="3" Height="24" Width="24" Source="/Assets/Images/Coin.png" Visibility="{Binding isVisiableEarnPoints, Converter={StaticResource VisibilityConverter}}" />
<TextBlock x:Name="tbxEarnPoints" Grid.Column="5" Text="15000" Visibility="{Binding isVisiableEarnPoints, Converter={StaticResource VisibilityConverter}}" />
和在用戶控件中使用這樣的:
<UserControls:Header Grid.Row="0" isVisiableEarnPoints="False"/>
但它仍然不工作!
做= 「{結合真/假,轉換器= {StaticResource的VisibilityConverter}}」? – patel 2014-11-21 14:33:15
@patel:正確 – Tigran 2014-11-21 14:33:54
先生,我想創建像這樣的新屬性: –
patel
2014-11-21 14:50:14