WPF学习笔记(1)--菜单

本文是关于WPF学习的第一篇笔记,重点介绍了如何创建和使用菜单。通过示例代码展示了如何添加菜单项、设置快捷键、添加分隔符以及在菜单中集成图像。同时,文中提及在打开图像时遇到的转换问题,`ImageSourceConverter`的使用让作者意识到WPF与WinForm控件的不同,强调了进一步学习的必要性。
摘要由CSDN通过智能技术生成

一直都在想研究一下WPF,一是一直安不上,另外就是没有资料,现在已经发布正式版了,总算安上了!

先看了看例子,然后知道了菜单是如何添加的!先看一下下面的代码:

 

< Window  x:Class ="WindowsApplication3.frmMain"
    xmlns
="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x
="http://schemas.microsoft.com/winfx/2006/xaml"
    Title
="Notepad"  Height ="300"  Width ="300"
    
>
    
< DockPanel  Name ="panel" >
      
< Menu  DockPanel.Dock ="Top" >
        
< MenuItem  Header ="_File" >
          
< MenuItem  Header ="_Open"  Click ="menuOpen_Click" ></ MenuItem >
          
< MenuItem  Header ="_Save"  Click ="menuSave_Click" ></ MenuItem >
          
< Separator />
          
< MenuItem  Header ="E_xit"  Click ="menuExit_Click" />
        
</ MenuItem >
        
< MenuItem  Header ="_Help" >
          
< MenuItem  Header ="_Content" ></ MenuItem >
          
< Separator />
          
< MenuItem  Header ="_About" />
        
</ MenuItem >
      
</ Menu >
    
</ DockPanel >
</ Window >

先是在Window中添加一个DockPanel,然后在DockPanel中添加Menu,这时即表示DockPanel中已经有一个菜单了,但还是没有菜单项的,MenuItem即表示菜单项了,如果其缩进不同,则表示菜单的级次,Separator表示分隔符的,而Header="_File"中的"_"是表示快捷键,试一下,是不是出现菜单了!

在添加一个Image

 

       </ Menu >
      
< Image  Name ="imgMain" >        
      
</ Image >
    
</ DockPanel >
</ Window >

然后在代码中添加

 

private   void  menuOpen_Click( object  sender, EventArgs e)
{
    OpenFileDialog form 
= new OpenFileDialog();
    
if (form.ShowDialog() != truereturn;
    
//打开图像
    ImageSourceConverter source = new ImageSourceConverter();
    
this.imgMain.Source = (ImageSource)source.ConvertFrom(form.FileName);
}

这样会在单击Open菜单时,会打开一个图像文件并显示

 今天感觉最有收获的是这句

//打开图像
ImageSourceConverter source = new ImageSourceConverter();
this.imgMain.Source = (ImageSource)source.ConvertFrom(form.FileName);

感觉WPF跟WinForm的控件完全不一样,还要多多学习啊!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值