极品分享

WPF使用中知识点总结

1.MouseButtonEventArgs 类定义在 System.Windows.Input命名空间中。含有方法GetPosition方法,此方法返回一个Point类型(这是定义在System.Windows命名空间内的结构体类型)的对象,表示鼠标坐标(相对于GetPosition参数的左上角)。含有ChangedButton属性,此属性“获取以该事件关联的按钮”(也就是是鼠标的左键,右键等)。

2.Button的 IsDefault 属性设置为true表明此按钮和Enter键关联;IsCancel 属性设置为true表明此按钮和Esc键关联。

如果给Button设置快捷键则可以如下:

<Button Name="btnEnter" Content="查询(_Q)" Width="200" Height="100" ></Button> 下划线加字母代表快捷键为Alt+Q。

但是如果Button在ToolBar里那么上面这种写法不行,须写为:

<ToolBar>

     <Button Name="btnWantCreate">

          <AccessText>新增(_N)</AccessText>

     </Button>

</ToolBar>

3.图片属性里德生成操作设置为SplashScreen,这样在显示自己程序前会先显示这个图片。

4.WPF中. 在Toolbar中连续使用Tab键时,其会循环与其中.如何跳出该循环呢, 很简单, 将TabBar的TabNavigation属性设置为Continue就可以了。

<ToolBar  KeyboardNavigation.TabNavigation="Continue"></ToolBar>

5.在XAML里限定泛型的类型(http://msdn.microsoft.com/zh-cn/library/ms750476.aspx):

      假定声明了以下 XAML 命名空间定义:

xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:scg="clr-namespace:System.Collections.Generic;assembly=mscorlib"

     List<字符串>

     <scg:List x:TypeArguments="sys:String" ...> 实例化新的带有两个 String 类型参数的 List<T>。

     Dictionary<字符串,字符串>

     <scg:Dictionary x:TypeArguments="sys:String,sys:String" ...> 实例化新的带有两个 String 类型参数的 Dictionary<TKey, TValue>。

6.程序的Icon设置:  右键项目选择属性-->应用程序-->资源-->图标和清单-->图标  选中自己想要设置的Icon

Windows Presentation Foundation (WPF) 独立应用程序具有两种类型的图标:

一个程序集图标,此图标是在应用程序的项目生成文件中使用 <ApplicationIcon> 属性指定的。 此图标用作程序集的桌面图标。

注意:When debugging in Visual Studio, your icon may not appear due to the hosting process. If you run the executable, the icon will appear. 有关更多信息,请参见承载进程 (vshost.exe)。当调试的时候不显示图标,开始运行不调试时才显示.

每个窗口各自具有的一个图标,此图标是通过设置 Icon 指定的。 对于每个窗口,此图标在窗口的标题栏、任务栏按钮和 Alt-Tab 应用程序选择列表项中使用.

WPF 窗口总是显示一个图标。 如果没有通过设置 Icon 提供图标,WPF 将基于下列规则选择要显示的图标:

1. 使用程序集图标(如果已指定)。

2. 如果未指定程序集图标,则使用默认的 Microsoft Windows 图标。

如果使用 Icon 指定自定义窗口图标,可以通过将 Icon 设置为 null 来还原默认的应用程序图标。

 

DataGrid的行,单元格根据绑定数据的变化,改变样式:

一 : 对行的样式添加DataTrigger,当Binding的State值为0时,行的Background,IsEnabled两个属性改变

<DataGrid.RowStyle>
      <Style TargetType="DataGridRow">
         <Style.Triggers>
            <DataTrigger Binding="{Binding Path=State,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Value="0">
                <Setter Property="Background" Value="Red"></Setter>
                <Setter Property="IsEnabled" Value="False"></Setter>
            </DataTrigger>
         </Style.Triggers>
      </Style>
   </DataGrid.RowStyle>

 

二: 对单元格的样式添加DataTrigger,当Binding的State值为0时,行的Background,IsEnabled两个属性改变

 

<DataGridTextColumn.CellStyle>
       <Style TargetType="DataGridCell" >
              <Style.Triggers>
                  <DataTrigger Binding="{Binding Path=State,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Value="0">
                       <Setter Property="Background" Value="Red"></Setter>
                       <Setter Property="IsEnabled" Value="False"></Setter>
                  </DataTrigger>
              </Style.Triggers>
       </Style>
   </DataGridTextColumn.CellStyle>

 

 

 

2013-04-08 0 /
NET学习
/
标签: 

评论回复

回到顶部