0
我currenctly編程的小應用程序,和我被困在以下幾點:TextBlock的能見度變化WPF
我的按鈕在代碼的幾個參數,我想表現出一個單獨的文本塊中的值。
當我將鼠標懸停在按鈕上時,是否有可能更改文本塊的可見性,以便僅當懸停在按鈕上時可以看到參數?
我currenctly編程的小應用程序,和我被困在以下幾點:TextBlock的能見度變化WPF
我的按鈕在代碼的幾個參數,我想表現出一個單獨的文本塊中的值。
當我將鼠標懸停在按鈕上時,是否有可能更改文本塊的可見性,以便僅當懸停在按鈕上時可以看到參數?
當然有,使用按鈕MouseEnter
事件。財產以後像下面將很好地工作:
button1_MouseEnter(object sender, EventArgs e)
{
textBlock1.Visibility = Visibility.Visible;
}
然後讓它隱藏,使用MouseLeave
事件:
button1_MouseLeave(object sender, EventArgs e)
{
textBlock1.Visibility = Visibility.Hidden;
}
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"
感謝您的解決方案,但如何在WPF代碼中實現這些方法?因爲什麼我是類似於只有懸停版本 – Eulen 2014-12-03 09:01:36
類似於' – Shadow 2014-12-03 09:03:00