2014-12-03 46 views
0

我currenctly編程的小應用程序,和我被困在以下幾點:TextBlock的能見度變化WPF

我的按鈕在代碼的幾個參數,我想表現出一個單獨的文本塊中的值。

當我將鼠標懸停在按鈕上時,是否有可能更改文本塊的可見性,以便僅當懸停在按鈕上時可以看到參數?

回答

0

當然有,使用按鈕MouseEnter事件。財產以後像下面將很好地工作:

button1_MouseEnter(object sender, EventArgs e) 
{ 
    textBlock1.Visibility = Visibility.Visible; 
} 

然後讓它隱藏,使用MouseLeave事件:

button1_MouseLeave(object sender, EventArgs e) 
{ 
    textBlock1.Visibility = Visibility.Hidden; 
} 
+0

感謝您的解決方案,但如何在WPF代碼中實現這些方法?因爲什麼我是類似於

+0

類似於

1

XAML的解決方案:

<Grid> 
    <Grid.Resources> 
     <converters:BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter"/> 
    </Grid.Resources> 

    <Grid.RowDefinitions> 
     <RowDefinition /> 
     <RowDefinition /> 
    </Grid.RowDefinitions> 

    <Grid.ColumnDefinitions> 
     <ColumnDefinition /> 
     <ColumnDefinition /> 
    </Grid.ColumnDefinitions> 

    <TextBlock Text="Foo" Visibility="{Binding IsMouseOver, ElementName=Foo, Converter={StaticResource BooleanToVisibilityConverter}}"/> 
    <TextBlock Grid.Row="1" Text="Bar" Visibility="{Binding IsMouseOver, ElementName=Bar, Converter={StaticResource BooleanToVisibilityConverter}}"/> 

    <Button x:Name="Foo" Grid.Column="1" Content="Foo"/> 
    <Button x:Name="Bar" Grid.Row="1" Grid.Column="1" Content="Bar"/> 
</Grid> 

其中converters命名空間被聲明爲:

xmlns:converters="clr-namespace:System.Windows.Controls;assembly=PresentationFramework"