//前台窗体
<Window x:Class="WpfTestDemo.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WpfTestDemo"
mc:Ignorable="d"
Title="MainWindow" Height="800" Width="1200">
<!--#region 布局控件 -->
<!--普通表格-->
<!--<Grid>
<Grid.RowDefinitions>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
</Grid.ColumnDefinitions>
<Border BorderThickness="1 1 1 1" BorderBrush="Red" Grid.Column="0" Grid.Row="0">
<Button Content="学习内容3" Grid.Row="0" Grid.Column="0" Panel.ZIndex="3" Margin="20,40,60,80" Padding="20"></Button>
</Border>
<Border BorderThickness="0 1 1 1" BorderBrush="Red" Grid.Column="1" Grid.Row="0">
<Button Content="学习内容3" Grid.Row="0" Grid.Column="1" Panel.ZIndex="3" Margin="20,40,60,80" Padding="20"></Button>
</Border>
<Border BorderThickness="1 0 1 1" BorderBrush="Red" Grid.Column="0" Grid.Row="1">
<Button Content="学习内容3" Grid.Row="1" Grid.Column="0" Panel.ZIndex="3" Margin="20,40,60,80" Padding="20"></Button>
</Border>
<Border BorderThickness="0 0 1 1" BorderBrush="Red" Grid.Column="1" Grid.Row="1">
<Button Content="学习内容3" Grid.Row="1" Grid.Column="1" Panel.ZIndex="3" Margin="20,40,60,80" Padding="20"></Button>
</Border>
-->
<!--<Button Content="学习内容" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Panel.ZIndex="1" Margin="20,40,60,80" Padding="20"></Button>
<Button Content="学习内容3" Grid.Row="0" Grid.Column="1" Panel.ZIndex="3" Grid.RowSpan="2" Margin="20,40,60,80" Padding="20"></Button>-->
<!--
</Grid>-->
<!--自动填充表格-->
<!--<UniformGrid FirstColumn="1" Rows="3" Columns="3">
<Button Content="biaogeceshitiancgong" Margin="2"></Button>
<Button Content="biaogeceshitiancgong2" Margin="2"></Button>
<Button Content="biaogeceshitiancgong3" Margin="2"></Button>
<Button Content="biaogeceshitiancgong4" Margin="2"></Button>
<Button Content="biaogeceshitiancgong4" Margin="2"></Button>
</UniformGrid>-->
<!--水平或垂直重叠子元素-->
<!--<Grid>
<ScrollViewer>
<StackPanel Orientation="Vertical">
<Button Content="stackpenal Test1" HorizontalAlignment="Left" Margin="10" Height="50"></Button>
<Button Content="stackpenal Test2" HorizontalAlignment="Center" Margin="10" Height="50"></Button>
<Button Content="stackpenal Test3" Margin="10" HorizontalAlignment="Right" Height="50"></Button>
<Button Content="stackpenal Test4" Margin="10" HorizontalAlignment="Stretch" Height="50"></Button>
<Button Content="stackpenal Test5" Margin="10" Height="50"></Button>
</StackPanel>
</ScrollViewer>
</Grid>-->
<!--瀑布流布局-->
<!--<WrapPanel ItemWidth="200" ItemHeight="80" Orientation="Vertical">
<Button Content="wrappanel1 Test1" Margin="0"></Button>
<Button Content="wrappanel2 Test2" Margin="0"></Button>
<Button Content="wrappanel3 Test3" Margin="0"></Button>
<Button Content="wrappanel4 Test4" Margin="0"></Button>
<Button Content="wrappanel5 Test5" Margin="0"></Button>
</WrapPanel>-->
<!--停靠布局-->
<!--<DockPanel LastChildFill="False">
<Button Content="dockpannel1 Test1" Margin="0" DockPanel.Dock="Top"></Button>
<Button Content="dockpannel2 Test2" Margin="0" DockPanel.Dock="Left"></Button>
<Button Content="dockpannel3 Test3" Margin="0" DockPanel.Dock="Right"></Button>
<Button Content="dockpannel4 Test4" Margin="0" DockPanel.Dock="Bottom"></Button>
<Button Content="dockpannel5 Test5" Margin="0"></Button>
<Button Content="dockpannel6 Test6" Margin="0"></Button>
<Button Content="dockpannel6 Test6" Margin="0"></Button>
<Button Content="dockpannel6 Test6" Margin="0"></Button>
<Button Content="dockpannel6 Test6" Margin="0"></Button>
<Button Content="dockpannel6 Test6" Margin="0"></Button>
<Button Content="dockpannel6 Test6" Margin="0"></Button>
<Button Content="dockpannel6 Test6" Margin="0"></Button>
</DockPanel>-->
<!--绝对布局-->
<!--<Canvas>
<Button Content="dockpannel1" Margin="0" Canvas.Top="100"></Button>
<Button Content="dockpannel2" Margin="0" Canvas.Right="100"></Button>
<Button Content="dockpannel3" Margin="0" Canvas.Bottom="100"></Button>
<Button Content="dockpannel4" Margin="0" Canvas.Left="100"></Button>
</Canvas>-->
<!--边框布局 Border-->
<!--<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Border Background="LightBlue" Width="100" Height="50" Margin="5">
<TextBlock VerticalAlignment="Center" HorizontalAlignment="Center" Text="border1"></TextBlock>
</Border>
<Border Background="LightCoral" Width="100" Height="50" CornerRadius="10" Margin="5">
<TextBlock VerticalAlignment="Center" HorizontalAlignment="Center" Text="border1"></TextBlock>
</Border>
<Border Background="LightGoldenrodYellow" Width="100" Height="100" CornerRadius="10 20 30 50" Margin="5">
<TextBlock VerticalAlignment="Center" HorizontalAlignment="Center" Text="border1"></TextBlock>
</Border>
</StackPanel>-->
<!--布局demo-->
<!--<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition Height="*"/> -->
<!--占满剩余空间-->
<!--
<RowDefinition Height="auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto" />
<ColumnDefinition />
</Grid.ColumnDefinitions>
-->
<!--TOP-->
<!--
<DockPanel Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Background="#126A74" Height="60">
<TextBlock Text="WPF布局教程" Foreground="White" Margin="15,15" FontSize="20"/>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
<Border Height="35" Margin="10" BorderThickness="1" BorderBrush="#CA5100" Background="#CA5100" CornerRadius="7">
<TextBlock Text="退出系统" Foreground="White" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="10,0" />
</Border>
</StackPanel>
</DockPanel>
-->
<!--LEFT-->
<!--
<StackPanel Grid.Row="1" Grid.Column="0" Width="350">
<Border Height="250" Margin="10" Padding="5" Background="#439D84">
<TextBlock Text="参数区域" Margin="5" HorizontalAlignment="Center" VerticalAlignment="Center" Foreground="White" FontSize="16"/>
</Border>
<Border Height="250" Margin="10" Padding="5" Background="#9CDC7B">
<TextBlock Text="参数区域" Margin="5" HorizontalAlignment="Center" VerticalAlignment="Center" Foreground="White" FontSize="16"/>
</Border>
<Border Height="110" Margin="10" Padding="5" Background="#E97752">
<TextBlock Text="参数区域" Margin="5" HorizontalAlignment="Center" VerticalAlignment="Center" Foreground="White" FontSize="16"/>
</Border>
</StackPanel>
-->
<!--RIGHT-->
<!--
<Grid Grid.Row="1" Grid.Column="1">
<Border Margin="10" Padding="5" BorderThickness="1" BorderBrush="#F7BD93" CornerRadius="5" Background="#FDD2B2">
<TextBlock Text="主题区域" Margin="5"/>
</Border>
<Border Width="150" Height="150" Padding="5" BorderThickness="1" BorderBrush="Gray" Background="Red" CornerRadius="75">
<TextBlock Text="开始运行" HorizontalAlignment="Center" VerticalAlignment="Center" Foreground="White" FontSize="20"/>
</Border>
</Grid>
-->
<!--BOTTOM-->
<!--
<Grid Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Background="#CA5100">
<TextBlock Text="版本号 1.2.3.4 版权所有:JackChen" FontSize="14" Foreground="White" Margin="3" HorizontalAlignment="Center"/>
</Grid>
</Grid>-->
<!--分割控件-->
<!--<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="auto"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Border Grid.Column="0" Background="LightBlue">
<TextBlock TextWrapping="Wrap" Padding="10" LineHeight="20">
您好,我是来自江西的JackieChen,欢迎来到美丽的文化之邦,江西,我们就是最强的,你可以在百度,谷歌,搜狗等各个地方都可以看到我们,这是完全ok的。
</TextBlock>
</Border>
<GridSplitter Grid.Column="1" Width="5" HorizontalAlignment="Center" ShowsPreview="True"/>
<Border Grid.Column="2" Background="LightCoral">
<TextBlock TextWrapping="Wrap" Padding="10" LineHeight="20">
您好,我是来自江西的JackieChen2号,欢迎来到美丽的文化之邦,江西,我们就是最强的,你可以在百度,谷歌,搜狗等各个地方都可以看到我们,这是完全ok的。
</TextBlock>
</Border>
</Grid>-->
<!--#endregion-->
<!--#region 模板 -->
<!--<Grid>
<Control Background="Red" FontSize="30" Width="400" Height="400" Foreground="Gray">
<Control.Template>
<ControlTemplate TargetType="Control">
<Border Width="300" Height="300" Background="Green" CornerRadius="90">
<TextBlock Background="{TemplateBinding Background}" Foreground="Gray" HorizontalAlignment="Center" VerticalAlignment="Center" Text="WPF初始化学习"/>
</Border>
</ControlTemplate>
</Control.Template>
</Control>
</Grid>-->
<!--ContentControl 内容模板-->
<!--<Grid>
<ContentControl FontSize="50" Foreground="Red">
<ContentControl.ContentTemplate>
<DataTemplate>
<Border HorizontalAlignment="Center" Background="Red" CornerRadius="10" VerticalAlignment="Center">
<TextBlock Text="{Binding}" Foreground="White" Padding="10"></TextBlock>
</Border>
</DataTemplate>
</ContentControl.ContentTemplate>
这是我自己的测试程序,内容绑定
</ContentControl>
</Grid>-->
<!--#endregion-->
<!--#region Button所有类型 -->
<!--<Grid>-->
<!--<Button Click="Button_Click" Width="200" Height="80">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<TextBlock Text="But" Grid.Column="0" Foreground="Red" FontSize="28"/>
<TextBlock Text="ton" Grid.Column="1" Foreground="Green" FontSize="38"/>
</Grid>
</Button>-->
<!--ToggleButton-->
<!--<ToggleButton Content="toggleClick" Width="300" Height="100" FontSize="30" Click="ToggleButton_Click"/>-->
<!--<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center" Orientation="Horizontal">
<ToggleButton Click="ToggleButton_Click">
<Border Width="100" Height="100" CornerRadius="50" Background="Red">
<TextBlock FontSize="20" Text="Toggle" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
</ToggleButton>
</StackPanel>-->
<!--CheckBox-->
<!--<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<TextBlock Text="今晚吃什么" />
<CheckBox Content="猪肚鸡" Name="ck1"/>
<CheckBox Content="土豆炖牛肉" Name="ck2"/>
<CheckBox Content="小炒鸡" Name="ck3"/>
<CheckBox Content="红烧鱼" Name="ck4"/>
<Button Content="查看菜单" Margin="10,0" Click="Button_Click_1"/>
</StackPanel>-->
<!--RadioButton-->
<!--<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<TextBlock Text="今晚吃什么" />
<RadioButton Content="猪肚鸡" Name="ck1" GroupName="d" />
<RadioButton Content="土豆炖牛肉" Name="ck2" GroupName="d"/>
<RadioButton Content="小炒鸡" Name="ck3" GroupName="x"/>
<RadioButton Content="红烧鱼" Name="ck4" IsChecked="True" GroupName="x"/>
<Button Content="查看菜单" Margin="10,0" Click="Button_Click_1"/>
</StackPanel>-->
<!--RepeatButton-->
<!--<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<TextBlock Text="我要去刷牙" Margin="10,0" />
<RepeatButton Content="挤牙膏" Click="RepeatButton_Click" Delay="1000" Interval="500" />
</StackPanel>-->
<!--</Grid>-->
<!--#endregion-->
<!--#region 文字显示 label和textblock label更强大,需要消耗更多资源,只显示一段文字建议用textblock-->
<!--<Grid>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Label Content="label学习" Width="200" FontSize="20" Background="LightGreen" Foreground="Red"/>
<Label>
<StackPanel>
<TextBlock Text="你干啥呢" Margin="5" Foreground="LightCoral"/>
<TextBlock Text="问你话呢" Margin="5"/>
<Label Content="没啥,逗你玩呢" Background="LightBlue"/>
</StackPanel>
</Label>
<Label FontSize="30">
<WrapPanel>
<TextBlock Text="粗体文字" FontWeight="Bold"/>
<TextBlock Text="斜体" FontStyle="Italic"/>
<TextBlock>
<Run Text="这是1" Foreground="Red"/>
<Run Text="这是2" Foreground="Aquamarine" />
<Run Text="这是3" Foreground="Bisque"/>
</TextBlock>
<ScrollViewer Width="100" Height="100">
<TextBlock TextWrapping="Wrap" Text="这是一段很长很长的话,但是具体有多长,我也不知道,反正就是很长很长,长的离谱的长" FontStyle="Italic"/>
</ScrollViewer>
</WrapPanel>
</Label>
<TextBlock Name="textBlock" Width="320" Height="100" FontSize="15" FontWeight="Black" FontStretch="Condensed" Foreground="White" Background="Teal" TextAlignment="Center"
TextWrapping="Wrap" TextTrimming="CharacterEllipsis" Margin="10" Padding="5" HorizontalAlignment="Center" VerticalAlignment="Center" LineHeight="30">
<Run Foreground="Yellow" TextDecorations="Underline" Text="滚滚长江东逝水"/>
<Run Foreground="Red" TextDecorations="OverLine" FontStyle="Italic" Text="浪花淘尽英雄"/>
<Run Foreground="DarkSeaGreen" TextDecorations="Baseline" FontStyle="Oblique" Text="是非成败集成块。青山依旧在,几度夕阳红,您说呢?"/>
</TextBlock>
</StackPanel>
</Grid>-->
<!--#endregion-->
<!--#region RichTextBox富文本框 -->
<!--<StackPanel>
<RichTextBox Name="_richTextBox" Margin="10,5" Padding="5" Height="270">
<FlowDocument>
<Paragraph TextAlignment="Center">让你看看这个强大的功能</Paragraph>
<Paragraph >还不错把</Paragraph>
<Paragraph >怎么样</Paragraph>
<List MarkerOffset="25" MarkerStyle="Decimal" StartIndex="1">
<ListItem><Paragraph>第一段</Paragraph></ListItem>
<ListItem><Paragraph>第二段</Paragraph></ListItem>
<ListItem><Paragraph>第三段</Paragraph></ListItem>
</List>
</FlowDocument>
</RichTextBox>
<Button FontSize="30" Click="Button_Click_2" Content="确定"/>
</StackPanel>-->
<!--#endregion-->
<!--#region 提示工具依赖于其他控件,相当于鼠标悬浮事件 -->
<!--<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Button Content="确定" Width="100" Height="30" ToolTip="小小的花园里"/>
<Button Content="进入" Width="100" Height="30" Margin="5">
<Button.ToolTip>
<StackPanel>
<TextBlock Text="VIP教程" FontWeight="Bold"/>
<TextBlock Text="点击进入"/>
<Border BorderThickness="0,1,0,0" BorderBrush="Red" Margin="4">
<TextBlock Text="开启新房"/>
</Border>
</StackPanel>
</Button.ToolTip>
</Button>
</StackPanel>-->
<!--#endregion-->
<!--#region 弹出窗口 -->
<!--<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<CheckBox Name="_checkBox" Content="是否打开Popup" ToolTip="这是一个提示窗口"/>
<Popup Name="_popup" IsOpen="{Binding ElementName=_checkBox,Path=IsChecked}" PlacementTarget="{Binding ElementName=_checkBox}" StaysOpen="True">
<Border BorderBrush="White" BorderThickness="1" Background="LightBlue">
<StackPanel>
<TextBlock Text="VIP教程" FontWeight="Bold"/>
<TextBlock Text="点击进入"/>
<Border BorderThickness="0,1,0,0" BorderBrush="Red" Margin="4"/>
<TextBlock Text="开启新房"/>
</StackPanel>
</Border>
</Popup>
</StackPanel>-->
<!--#endregion-->
<!--图片-->
<!--<Grid>
<StackPanel>
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
<Image Source="pack://application:,,,/image/wyz.jpeg" Stretch="Fill" StretchDirection="Both" Height="200" />
</StackPanel>
</Grid>-->
<!--GroupBox-->
<!--<GroupBox>
<WrapPanel Orientation="Horizontal">
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
</WrapPanel>
</GroupBox>-->
<!--<GroupBox>
<ScrollViewer HorizontalScrollBarVisibility="Visible">-->
<!--VerticalScrollBarVisibility="Visible"-->
<!--
<StackPanel Orientation="Horizontal">-->
<!--Vertical-->
<!--
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Height="200" />
</Border>
</StackPanel>
</ScrollViewer>
</GroupBox>-->
<!--Slider-->
<!--<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Canvas>
<StackPanel Orientation="Horizontal" Grid.Row="0" Name="stackpanel">
<Border BorderBrush="LightBlue" BorderThickness="1" CornerRadius="5" Margin="5">
<Image Source="/image/wyz.jpeg" Stretch="Uniform" StretchDirection="Both" Width="{Binding ElementName=slider,Path=Value}" Height="{Binding ElementName=slider,Path=Value}" />
</Border>
</StackPanel>
</Canvas>
<Slider Name="slider" Grid.Row="1" Minimum="50" Maximum="500" Value="50" VerticalAlignment="Bottom" Panel.ZIndex="100">
</Slider>
<TextBlock Grid.Row="1">
<Run Text="width:"/>
<Run Text="{Binding ElementName=slider,Path=Value}"/>
<Run Text="Height:"/>
<Run Text="{Binding ElementName=slider,Path=Value}"/>
</TextBlock>
</Grid>-->
<!--ProgressBar-->
<!--<Grid>
<ProgressBar Name="progressBar" IsIndeterminate="False" Value="50" Minimum="0" Maximum="100" Orientation="Horizontal" Height="10" Margin="15"/>
<TextBlock Name="textBlock" Text="50%" HorizontalAlignment="Center" Margin="1,150,0,0"/>
</Grid>-->
<!--Calendar日历控件-->
<!--<StackPanel>
<Calendar Name="calendar" SelectionMode="MultipleRange" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0,15" DisplayDateStart="2020/1/1" DisplayDateEnd="2024/1/1"/>
<Button HorizontalAlignment="Center" Content="选择" Click="Button_Click_3"/>
</StackPanel>-->
<!--DatePicker日期时间事件-->
<!--<StackPanel HorizontalAlignment="Center" Margin="10">
<StackPanel Orientation="Horizontal" Margin="10">
<TextBlock Text="开始日期" VerticalAlignment="Center"/>
<DatePicker Name="datepickerstrat" HorizontalAlignment="Center" Margin="10,0"/>
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="10">
<TextBlock Text="结束日期" VerticalAlignment="Center"/>
<DatePicker Name="datepickerend" HorizontalAlignment="Center" Margin="10,0"/>
</StackPanel>
<Button HorizontalAlignment="Center" Content="选择" Click="Button_Click_4"/>
</StackPanel>-->
<!--Expander展开-->
<!--<StackPanel>
<TextBlock Text="Expander用法"/>
<Expander ExpandDirection="Down" Expanded="Expander_Expanded" Collapsed="Expander_Collapsed">
<Expander.Header>
<Label Content="Expander用法"/>
</Expander.Header>
<Grid Background="LightBlue">
<TextBlock TextWrapping="Wrap" Padding="10">
这是Expender的基础用法,至于是怎么用的,你看看实例就知道了,如果你还是不知道的话,那么也许示例已经帮不了你了,我觉得你还是另寻高就吧,毕竟我已经帮不了你了,如果你觉得我还是能帮你那你就再看看示例吧,真的,我不骗你,我能帮你的只有这么多了
</TextBlock>
</Grid>
</Expander>
<Expander ExpandDirection="Left" Expanded="Expander_Expanded" Collapsed="Expander_Collapsed">
<Expander.Header>
<Label Content="Expander用法"/>
</Expander.Header>
<Grid Background="LightBlue">
<TextBlock TextWrapping="Wrap" Padding="10">
这是Expender的基础用法,至于是怎么用的,你看看实例就知道了,如果你还是不知道的话,那么也许示例已经帮不了你了,我觉得你还是另寻高就吧,毕竟我已经帮不了你了,如果你觉得我还是能帮你那你就再看看示例吧,真的,我不骗你,我能帮你的只有这么多了
</TextBlock>
</Grid>
</Expander>
<Expander ExpandDirection="Right" Expanded="Expander_Expanded" Collapsed="Expander_Collapsed">
<Expander.Header>
<Label Content="Expander用法"/>
</Expander.Header>
<Grid Background="LightBlue">
<TextBlock TextWrapping="Wrap" Padding="10">
这是Expender的基础用法,至于是怎么用的,你看看实例就知道了,如果你还是不知道的话,那么也许示例已经帮不了你了,我觉得你还是另寻高就吧,毕竟我已经帮不了你了,如果你觉得我还是能帮你那你就再看看示例吧,真的,我不骗你,我能帮你的只有这么多了
</TextBlock>
</Grid>
</Expander>
<Expander ExpandDirection="Up" Expanded="Expander_Expanded" Collapsed="Expander_Collapsed">
<Expander.Header>
<Label Content="Expander用法"/>
</Expander.Header>
<Grid Background="LightBlue">
<TextBlock TextWrapping="Wrap" Padding="10">
这是Expender的基础用法,至于是怎么用的,你看看实例就知道了,如果你还是不知道的话,那么也许示例已经帮不了你了,我觉得你还是另寻高就吧,毕竟我已经帮不了你了,如果你觉得我还是能帮你那你就再看看示例吧,真的,我不骗你,我能帮你的只有这么多了
</TextBlock>
</Grid>
</Expander>
</StackPanel>-->
<!--MediaElement视频播放,目前有声音不出画面,可能是解码器的问题-->
<!--<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
</Grid.RowDefinitions>
<MediaElement Name="_MdiuElement" LoadedBehavior="Manual"/>
<Border Name="_Border" Background="Black">
<TextBlock Name="_TextBlock" Text="MediaElement | 媒体播放器" Foreground="LightCoral" FontSize="20" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
<StackPanel Orientation="Horizontal" Grid.Row="1">
<Button Content="打开" Width="60" Height="25" Margin="5" Click="OpenMeida"/>
<Button Content="播放" Width="60" Height="25" Margin="5" Click="PlayMeida"/>
<Button Content="停止" Width="60" Height="25" Margin="5" Click="StopMeida"/>
<Button Content="后退" Width="60" Height="25" Margin="5" Click="BackMeida"/>
<Button Content="前进" Width="60" Height="25" Margin="5" Click="ForwardMeida"/>
<TextBlock Text="音量" Width="60" Height="25" Margin="5" VerticalAlignment="Center"/>
<Slider Name="_Slider" Minimum="0" Maximum="100" Value="50" Width="120" VerticalAlignment="Center" HorizontalAlignment="Center" ValueChanged="Slider_ValueChange"/>
</StackPanel>
<Grid Grid.Row="2">
<ProgressBar Name="_ProgressBar" Height="10" Margin="5"/>
</Grid>
</Grid>-->
<!--ItemsControl控件集合面板-->
<!--<Grid>
<ItemsControl Name="_ItemControl" Background="LightBlue">-->
<!--ItemsSource=" " 数据绑定-->
<!--
<Button Content="Content" Margin="15,5" Click="Button_Click_ItemControl"/>
<Border Height="30" Background="LightCoral" Margin="5"/>
<TextBlock Text="TextBlock" Background="LightCyan"/>
</ItemsControl>
</Grid>-->
<!--ListBox-->
<!--<Grid Margin="5">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition Height="auto"/>
</Grid.RowDefinitions>
<ListBox Name="listBox" Margin="5" DisplayMemberPath="Name" SelectedValuePath="Age" />
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Grid.Row="1">
<Button Content="查看结果" Click="Button_Click_Result"/>
<TextBlock Name="_TextBlock"/>
</StackPanel>
</Grid>-->
<!--ListView-->
<!--<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="200"/>
</Grid.ColumnDefinitions>
<ListView Name="listBox" Margin="5" SelectionChanged="listBox_SelectionChanged">
<ListView.View>
<GridView>
<GridViewColumn Header="姓名" DisplayMemberBinding="{Binding Name}"/>
<GridViewColumn Header="年龄" DisplayMemberBinding="{Binding Age}"/>
<GridViewColumn Header="地址" DisplayMemberBinding="{Binding Address}"/>
</GridView>
</ListView.View>
</ListView>
<StackPanel Margin="5" Grid.Column="1">
<StackPanel Orientation="Horizontal" Margin="5">
<TextBlock Text="姓名:" />
<TextBlock Name="_name" />
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="5">
<TextBlock Text="年龄:" />
<TextBlock Name="_age" />
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="5">
<TextBlock Text="地址:" />
<TextBlock Name="_address" />
</StackPanel>
</StackPanel>
</Grid>-->
<!--ComboBox-->
<!--<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="200"/>
</Grid.ColumnDefinitions>
<StackPanel>
<ComboBox Name="_comBox1" Margin="20" Height="30" IsEditable="True" TextBoxBase.TextChanged="_comBox1_TextChanged" />
<ComboBox Name="_comBox2" Margin="20" Height="30" StaysOpenOnEdit="True" SelectionChanged="_comBox1_SelectionChanged" DisplayMemberPath="Name" />
</StackPanel>
<StackPanel Margin="5" Grid.Column="1">
<StackPanel Orientation="Horizontal" Margin="5">
<TextBlock Text="姓名:" />
<TextBlock Name="_name" />
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="5">
<TextBlock Text="年龄:" />
<TextBlock Name="_age" />
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="5">
<TextBlock Text="地址:" />
<TextBlock Name="_address" />
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="5">
<TextBlock Text="电话:" />
<TextBlock Name="_phone" />
</StackPanel>
</StackPanel>
</Grid>-->
<!--<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition Height="50"/>
</Grid.RowDefinitions>
<TabControl Name="tabCon" SelectionChanged="tabCon_SelectionChanged">
<TabItem Header="首页">
<Border Background="LightBlue">
<TextBlock Text="首页界面" FontSize="40" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
</TabItem>
<TabItem Header="内容中心">
<Border Background="LightCoral">
<TextBlock Text="内容中心界面" FontSize="40" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
</TabItem>
<TabItem Header="我的信息">
<Border Background="LightCyan">
<TextBlock Text="我的信息界面" FontSize="40" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
</TabItem>
</TabControl>
<TextBlock Grid.Row="1" Name="showCon"/>
</Grid>-->
<!--TreeView 树形图-->
<!--<Grid Margin="5">
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="根目录" Width="auto" Margin="10"/>
<TextBox Width="850" Name="_TetxBox"/>
<Button Content="路径选择.." Click="Button_Click_SelectRoot" Margin="10"/>
</StackPanel>
<TreeView Name="_TreeView" Grid.Row="1" BorderThickness="1" BorderBrush="LightBlue" Margin="10" SelectedItemChanged="TreeView_SelectedItemChanged"/>
</Grid>-->
<!--Menu菜单栏-->
<!--<Grid>
<StackPanel>
<Menu Name="_Menu">
<MenuItem Header="文件">
<MenuItem Header="新建"/>
<MenuItem Header="打开">
<MenuItem.Icon>
<Image Source="/image/wyz.jpeg"/>
</MenuItem.Icon>
</MenuItem>
</MenuItem>
</Menu>
<Menu Name="_Menu2">
<Menu.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Name}"/>
</HierarchicalDataTemplate>
</Menu.ItemTemplate>
</Menu>
</StackPanel>
</Grid>-->
<!--ContextMenu 右键菜单栏-->
<!--<Grid Margin="5">
<Border Background="LightBlue" Width="200" Height="100" CornerRadius="30" PreviewMouseUp="Border_PreviewMouseUp"> --><!--单机任意按键--><!--
<Border.ContextMenu>
<ContextMenu Name="_contentMenu" StaysOpen="True" HorizontalOffset="-100" VerticalOffset="-100">
<MenuItem Header="复制" Click="MenuItem_Click"/>
<MenuItem Header="粘贴" Command="{Binding MyCommand}"/>
<MenuItem Header="删除"/>
<MenuItem Header="剪贴"/>
</ContextMenu>
</Border.ContextMenu>
</Border>
</Grid>-->
</Window>
//后台方法
public partial class MainWindow : Window
{
private string file = string.Empty;
public List<MenuModel> menuModels = new List<MenuModel>();
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public string Address { get; set; }
}
public class MenuModel
{
public string Name { get; set; }
public List<MenuModel> Children { get; set; } = new List<MenuModel>();
public string View { get; set; }
}
public MainWindow()
{
InitializeComponent();
//buttom
//Task.Run(() => {
// Application.Current.Dispatcher.Invoke(() => {
// _buttom.Content = "Just do it";
// });
//});
//progressBar
//Loaded += (s, e) =>
//{
// Task.Factory.StartNew(() =>
// {
// for (int i = 0; i <= 100; i++)
// {
// Dispatcher.Invoke(() => //子线程修改了主线程的控件属性不出错
// {
// textBlock.Text = $"{i}%";
// progressBar.Value = i;
// });
// Task.Delay(25).Wait();
// }
// });
//};
//视频播放进度条绑定
//DispatcherTimer dispatcherTimer = new DispatcherTimer();
//dispatcherTimer.Interval = TimeSpan.FromMilliseconds(1000);
//dispatcherTimer.Tick += (s, e) =>
//{
// _ProgressBar.Value = _MdiuElement.Position.TotalMilliseconds;
//};
//dispatcherTimer.Start();
//listBox.Items.Add(new Person { Name = "张三", Age = 18, Address = "浙江" });
//listBox.Items.Add(new Person { Name = "李四", Age = 19, Address = "湖南" });
//listBox.Items.Add(new Person { Name = "王五", Age = 16, Address = "四川" });
List<Person> peopleList = new List<Person>();
peopleList.Add(new Person { Name = "张三", Age = 18, Address = "浙江" });
peopleList.Add(new Person { Name = "李四", Age = 19, Address = "湖南" });
peopleList.Add(new Person { Name = "王五", Age = 16, Address = "四川" });
// _list.ItemsSource = peopleList;
//_comBox2.ItemsSource = peopleList;
for (int i = 0; i < 5; i++)
{
MenuModel parent = new MenuModel();
parent.Name = $"一级菜单{i}";
for (int j = 0; j < 5; j++)
{
MenuModel children = new MenuModel();
children.Name = $"二级菜单{j}";
parent.Children.Add(children);
}
menuModels.Add(parent);
}
//_Menu2.ItemsSource = menuModels;
}
private void Button_Click(object sender, RoutedEventArgs e)
{
System.Windows.MessageBox.Show("点击了一个普通按钮");
}
private void ToggleButton_Click(object sender, RoutedEventArgs e)
{
System.Windows.MessageBox.Show($"您选择了{sender}");
}
private void Button_Click_1(object sender, RoutedEventArgs e)
{
string str = string.Empty;
//if (ck1.IsChecked.Value)
//{
// str += ck1.Content + ",";
//}
//if (ck2.IsChecked.Value)
//{
// str += ck2.Content + ",";
//}
//if (ck3.IsChecked.Value)
//{
// str += ck3.Content + ",";
//}
//if (ck4.IsChecked.Value)
//{
// str += ck4.Content + ",";
//}
System.Windows.Forms.MessageBox.Show(str);
}
int count = 0;
private void RepeatButton_Click(object sender, RoutedEventArgs e)
{
System.Windows.Forms.MessageBox.Show($"重复时间:{DateTime.Now.ToLongDateString()}.{DateTime.Now.Millisecond},重复次数:{count++}");
Console.WriteLine($"重复时间:{DateTime.Now.ToLongDateString()}.{DateTime.Now.Millisecond},重复次数:{count++}");
}
private void Button_Click_2(object sender, RoutedEventArgs e)
{
//TextRange textRange = new TextRange(_richTextBox.Document.ContentStart, _richTextBox.Document.ContentEnd);
//MessageBox.Show(textRange.Text);
//Paragraph paragraph = new Paragraph();
//Run run = new Run($"当前时间是{DateTime.Now}");
//run.Foreground = Brushes.Red;
//paragraph.Inlines.Add(run);
//_richTextBox.Document.Blocks.Add(paragraph);
}
private void Expander_Expanded(object sender, RoutedEventArgs e)
{
System.Windows.Forms.MessageBox.Show("展开事件");
}
private void Expander_Collapsed(object sender, RoutedEventArgs e)
{
System.Windows.Forms.MessageBox.Show("关闭事件");
}
private void Button_Click_Result(object sender, RoutedEventArgs e)
{
//_TextBlock.Text = $"Item ={(listBox.SelectedItem as Person).Name},Value={listBox.SelectedValue}";
}
private void listBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
//var selectDto = listBox.SelectedItem as Person;
//_name.Text = selectDto.Name;
//_age.Text = selectDto.Age+"";
//_address.Text = selectDto.Address;
}
private void _list_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
//var dataDto = _list.SelectedItem as Person;
//if (dataDto == null) return;
//_name.Text = dataDto.Name;
//_age.Text = dataDto.Age + "";
//_address.Text = dataDto.Address;
}
private void _comBox1_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
//var dataDto = _comBox2.SelectedItem as Person;
//if (dataDto == null) return;
//_name.Text = dataDto.Name;
//_age.Text = dataDto.Age + "";
//_address.Text = dataDto.Address;
}
private void _comBox1_TextChanged(object sender, TextChangedEventArgs e)
{
//_phone.Text = _comBox1.Text;
}
private void tabCon_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
// var tab = tabCon.SelectedItem as TabItem;
//showCon.Text = $"选中tab是{tab.Header},选中的内容是{tab.Content}";
}
private void Button_Click_3(object sender, RoutedEventArgs e)
{
}
//private void OpenMeida(object sender, RoutedEventArgs e)
//{
// var openFileDialog = new Microsoft.Win32.OpenFileDialog()
// {
// Multiselect = false,
// Filter = "视频文件(.mp4)|*.mp4"
// };
// if (openFileDialog.ShowDialog() == true)
// {
// file = openFileDialog.FileName;
// _MdiuElement.MediaOpened -= _MdiuElement_MediaOpened;
// _MdiuElement.MediaOpened += _MdiuElement_MediaOpened;
// _MdiuElement.Source = new Uri(file);
// this.Title = file;
// this._TextBlock.Text = file;
// }
//}
//private void _MdiuElement_MediaOpened(object sender, RoutedEventArgs e)
//{
// if (_MdiuElement.NaturalDuration.HasTimeSpan)
// {
// _ProgressBar.Value = _MdiuElement.NaturalDuration.TimeSpan.TotalMilliseconds;
// }
//}
//private void PlayMeida(object sender, RoutedEventArgs e)
//{
// _MdiuElement.Play();
// // _TextBlock.Visibility = Visibility.Collapsed;
//}
//private void StopMeida(object sender, RoutedEventArgs e)
//{
// _MdiuElement.Pause();
//}
//private void BackMeida(object sender, RoutedEventArgs e)
//{
// _MdiuElement.Position = _MdiuElement.Position - TimeSpan.FromSeconds(10);
//}
//private void ForwardMeida(object sender, RoutedEventArgs e)
//{
// _MdiuElement.Position = _MdiuElement.Position + TimeSpan.FromSeconds(10);
//}
//private void Slider_ValueChange(object sender, RoutedEventArgs e)
//{
// _MdiuElement.Volume = _Slider.Value;
//}
//private void Button_Click_ItemControl(object sender, RoutedEventArgs e)
//{
// var itemCollec = _ItemControl.Items;
//}
//private void Button_Click_3(object sender, RoutedEventArgs e)
//{
// MessageBox.Show($"当前选中数量{calendar.SelectedDates.Count},当前选中日期{calendar.SelectedDate}");
//}
//private void Button_Click_4(object sender, RoutedEventArgs e)
//{
// MessageBox.Show($"文本值:{datepickerstrat.SelectedDate}-{datepickerend.SelectedDate},\r\n{datepickerstrat.Text}-{datepickerend.Text}");
//}
//private void Button_Click_SelectRoot(object sender, RoutedEventArgs e)
//{
// FolderBrowserDialog dialog = new FolderBrowserDialog();
// if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
// {
// _TetxBox.Text = "";
// _TetxBox.Text = dialog.SelectedPath;
// LoadTreeView(dialog.SelectedPath);
// }
//}
//private void LoadTreeView(string selectedPath)
//{
// //设置根节点
// TreeViewItem treeViewItem = new TreeViewItem();
// treeViewItem.Header = "根目录";
// //加载子文件和文件夹
// LoadSubDiractory(treeViewItem, selectedPath);
// _TreeView.Items.Add(treeViewItem);
//}
//private void LoadSubDiractory(TreeViewItem treeViewItem, string selectedPath)
//{
// DirectoryInfo directoryInfo = new DirectoryInfo(selectedPath);
// //加载文件夹
// foreach (var item in directoryInfo.GetDirectories())
// {
// TreeViewItem subTreeViewItem = new TreeViewItem();
// subTreeViewItem.Header = item.Name;
// LoadSubDiractory(subTreeViewItem, item.FullName);
// treeViewItem.Items.Add(subTreeViewItem);
// }
// //加载文件
// foreach (var item in directoryInfo.GetFiles())
// {
// TreeViewItem subTreeViewItem = new TreeViewItem();
// subTreeViewItem.Header = item.Name;
// treeViewItem.Items.Add(subTreeViewItem);
// }
//}
//private void TreeView_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs<object> e)
//{
// TreeViewItem treeNode = _TreeView.SelectedItem as TreeViewItem;
// if (treeNode != null)
// {
// System.Windows.MessageBox.Show(treeNode.Header.ToString());
// }
//}
private void MenuItem_Click(object sender, RoutedEventArgs e)
{
var menuItem = sender as System.Windows.Controls.MenuItem;
System.Windows.Forms.MessageBox.Show(menuItem.Header.ToString());
}
private void Border_PreviewMouseUp(object sender, MouseButtonEventArgs e)
{
//_contentMenu.IsOpen = true;
}
}