mirror of
https://github.com/ckaczor/wpf-notifyicon.git
synced 2026-01-15 01:35:38 -05:00
WPF NotifyIcon
-------------- FIX Removed debug output in WindowMessageSink. CHG Major rework on sample project. git-svn-id: https://svn.evolvesoftware.ch/repos/evolve.net/WPF/NotifyIcon@104 9f600761-6f11-4665-b6dc-0185e9171623
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
<Window
|
||||
x:Class="Samples.Tutorials.DataBinding.DataBoundToolTipWindow"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:tb="http://www.hardcodet.net/taskbar"
|
||||
Height="300"
|
||||
Width="300">
|
||||
<Grid>
|
||||
|
||||
<!-- the ToolTipText property is bound to the TextBox below -->
|
||||
<tb:TaskbarIcon
|
||||
x:Name="MyNotifyIcon"
|
||||
IconSource="/Icons/Error.ico"
|
||||
ToolTipText="{Binding ElementName=txtToolTip, Path=Text}">
|
||||
|
||||
<!--
|
||||
The TextBlock bound to the ToolTipText property of the NotifyIcon
|
||||
The binding is implicit (using DataContext)
|
||||
-->
|
||||
<tb:TaskbarIcon.TrayToolTip>
|
||||
<Border
|
||||
Background="White"
|
||||
BorderBrush="Orange"
|
||||
BorderThickness="2"
|
||||
CornerRadius="4"
|
||||
Opacity="0.8"
|
||||
Width="160"
|
||||
Height="40">
|
||||
<TextBlock
|
||||
Text="{Binding Path=ToolTipText}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center" />
|
||||
</Border>
|
||||
</tb:TaskbarIcon.TrayToolTip>
|
||||
|
||||
</tb:TaskbarIcon>
|
||||
|
||||
|
||||
<!-- the ToolTipText property is bound to the TextBox below -->
|
||||
<tb:TaskbarIcon
|
||||
IconSource="/Icons/Inactive.ico"
|
||||
ToolTipText="{Binding ElementName=txtToolTip, Path=Text}">
|
||||
|
||||
<!--
|
||||
The TextBlock bound to the ToolTipText property of the NotifyIcon
|
||||
The binding is explicit (via attached ParentTaskbarIcon property)
|
||||
-->
|
||||
<tb:TaskbarIcon.TrayToolTip>
|
||||
<Border
|
||||
Background="White"
|
||||
BorderBrush="Orange"
|
||||
BorderThickness="2"
|
||||
CornerRadius="4"
|
||||
Opacity="0.8"
|
||||
Width="160"
|
||||
Height="40">
|
||||
<TextBlock
|
||||
Text="{Binding (tb:TaskbarIcon.ParentTaskbarIcon), Path=ToolTipText}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center" />
|
||||
</Border>
|
||||
</tb:TaskbarIcon.TrayToolTip>
|
||||
|
||||
</tb:TaskbarIcon>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<TextBlock
|
||||
Margin="26,26,24,0"
|
||||
VerticalAlignment="Top"
|
||||
TextWrapping="Wrap"
|
||||
FontWeight="Bold"><Run Text="This sample shows data bound ToolTips in two flavors"/><LineBreak/><Run Text=""/><LineBreak/><Run Text="- implicit binding via DataContext"/><LineBreak/><Run Text="- explicit binding via ParentTaskbarIcon (attached property)"/><LineBreak/><Run Text=""/><LineBreak/><Run Text="Move over NotifyIcons (grey / red) to show data bound ToolTip"/></TextBlock>
|
||||
<TextBox
|
||||
Margin="26,0,24,10"
|
||||
Text="hello world"
|
||||
TextWrapping="Wrap"
|
||||
x:Name="txtToolTip" Height="25" VerticalAlignment="Bottom" />
|
||||
<TextBlock
|
||||
Margin="26,0,125,45"
|
||||
VerticalAlignment="Bottom"
|
||||
Height="26"
|
||||
TextWrapping="Wrap"><Run
|
||||
|
||||
Text="ToolTipText:" /></TextBlock>
|
||||
|
||||
</Grid>
|
||||
</Window>
|
||||
@@ -0,0 +1,35 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Shapes;
|
||||
|
||||
namespace Samples.Tutorials.DataBinding
|
||||
{
|
||||
/// <summary>
|
||||
/// Interaction logic for DataBoundToolTipWindow.xaml
|
||||
/// </summary>
|
||||
public partial class DataBoundToolTipWindow : Window
|
||||
{
|
||||
public DataBoundToolTipWindow()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
|
||||
protected override void OnClosing(System.ComponentModel.CancelEventArgs e)
|
||||
{
|
||||
//clean up notifyicon (would otherwise stay open until application finishes)
|
||||
MyNotifyIcon.Dispose();
|
||||
|
||||
base.OnClosing(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user