<Window x:Class="WpfApplication_Transparency.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" AllowsTransparency="True" WindowStyle="None" Background="Transparent" MouseLeftButtonDown="Window_MouseLeftButtonDown" Loaded="Window_Loaded" Title="MainWindow" Height="350" Width="525"> <Grid> <Rectangle Fill="Yellow"> </Rectangle> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto"/> <ColumnDefinition/> <ColumnDefinition/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="10*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <Label Grid.Row="0" Grid.ColumnSpan="3" x:Name="LabelShow"/> <Label Content="Input" Grid.Row="1" Grid.Column="0"></Label> <TextBox Grid.Row="1" Grid.Column="1" x:Name="TextBoxInfo"/> <Button Grid.Row="1" Click="Button_Click_1" Grid.Column="2" Content="Close and Save"/> </Grid> </Grid> </Window>
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.Navigation; using System.Windows.Shapes; namespace WpfApplication_Transparency { /// <summary> /// MainWindow.xaml 的交互逻辑 /// </summary> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void Window_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { this.DragMove(); } private void Button_Click_1(object sender, RoutedEventArgs e) { if (TextBoxInfo.Text != null) { Properties.Settings.Default.Infomation = TextBoxInfo.Text; Properties.Settings.Default.Save(); } this.Close(); } private void Window_Loaded(object sender, RoutedEventArgs e) { LabelShow.Content = Properties.Settings.Default.Infomation; } } }
代码讲解:
在MainWindow.xaml中设置mainwindow的属性如下
AllowsTransparency="True"
WindowStyle="None"
Background="Transparent"
可使用不规则窗口。