MenuItem
private void 文件ToolStripMenuItem_Click(object sender, EventArgs e)
{
MessageBox.Show("打开测试");
//Close();
} private void button1_Click(object sender, EventArgs e)
{
//表示 System.Windows.Forms.MenuStrip 或 System.Windows.Forms.ContextMenuStrip 上显示的可选选项。 尽管 System.Windows.Forms.ToolStripMenuItem 替换了早期版本的 System.Windows.Forms.MenuItem 控件并添加了功能;但是也可选择保留 System.Windows.Forms.MenuItem 以备向后兼容和将来使用。
ToolStripMenuItem ms =(ToolStripMenuItem)menuStrip1.Items[];//获取菜单项
foreach (ToolStripItem item in ms.DropDownItems)
{
item.Enabled = true;
item.Font=new Font("楷体",,FontStyle.Bold);
}
} private void button2_Click(object sender, EventArgs e)
{
ToolStripMenuItem ms = (ToolStripMenuItem) menuStrip1.Items[];
foreach (ToolStripMenuItem item in ms.DropDownItems)
{
item.Enabled = false;
} } private void Form1_Load(object sender, EventArgs e)
{
//创建级联菜单 每一个菜单项都是一个ToolStripMnubItem对象
ToolStripMenuItem ms =(ToolStripMenuItem)menuStrip1.Items[];
ToolStripMenuItem ts1=new ToolStripMenuItem("关闭文件选项");
//ToolStripMenuItem ts2=new ToolStripMenuItem("关闭文件选项");
//ToolStripMenuItem ts3=new ToolStripMenuItem("关闭所有选项");
ToolStripMenuItem[]ts=new ToolStripMenuItem[]
{
new ToolStripMenuItem("关闭文件选项"),
new ToolStripMenuItem("关闭所有选项")
};
ms.DropDownItems.Add(ts1);
ms.DropDownItems.AddRange(ts);
}
MSDN:http://msdn.microsoft.com/zh-cn/library/vstudio/system.windows.forms.menustrip(v=vs.90).aspx
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO; namespace _274ContextMenuStrip
{
public partial class Form1 : Form
{
private string address;
public Form1()
{
InitializeComponent();
address = Environment.CurrentDirectory;//记录地址
}
private void 打开新窗体ToolStripMenuItem_Click(object sender, EventArgs e)
{
Form2 fm=new Form2();
fm.MdiParent = this;
fm.Show();
fm.Resize+=new EventHandler(f_Resize);
} void f_Resize(object sender,EventArgs e)
{
Form2 fm = (Form2)sender;//将Form2作为对象传进来
ToolStripMenuItem item = new ToolStripMenuItem();
for (int i = ; i < fm.contextMenuStrip1.Items.Count; )
{
item.DropDownItems.Add(fm.contextMenuStrip1.Items[i]);//添加鼠标右键
}
this.contextMenuStrip2.Items.AddRange(
new System.Windows.Forms.ToolStripItem[] { item }
);
}
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(sender.ToString());//测试验证 sender对象
} private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Exit();
} private void 关闭所有ToolStripMenuItem_Click(object sender, EventArgs e)
{ } private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
{
openFileDialog1.FileName = "*.jpg";//限定打开文件类型
openFileDialog1.ShowDialog();//弹出选择对话框
StreamWriter s=new StreamWriter(address+"\\History.ini",true);//初始化新实例
s.WriteLine(openFileDialog1.FileName);//写入
s.Flush();//清除流
s.Close();//关闭流
ShowWindows(openFileDialog1.FileName);
} private void ShowWindows(string fileName)
{
Image p = Image.FromFile(fileName);
Form f=new Form();
f.MdiParent = this;
f.BackgroundImage = p;
f.Show();
} private void Form1_Load(object sender, EventArgs e)
{
this.IsMdiContainer = true; 文件ToolStripMenuItem.DropDownItems[].Image = imageList1.Images[]; using (StreamReader sr = new StreamReader(address + "\\History.ini"))//创建流读取器对象
{
int i = 文件ToolStripMenuItem.DropDownItems.Count - ;//得到菜单项索引
while (sr.Peek() >= )//循环读取流中的文本
{
ToolStripMenuItem menuItem = new ToolStripMenuItem(sr.ReadLine());//创建菜单项对象
this.文件ToolStripMenuItem.DropDownItems.Insert(i, menuItem);//向菜单中添加新项
i++;//增加索引位置
menuItem.Click += new EventHandler(menuItem_Click);//添加单击事件
}
}
} private void menuItem_Click(object sender, EventArgs e)
{
ToolStripMenuItem menu = (ToolStripMenuItem) sender;
ShowWindows(menu.Text);
} private void acToolStripMenuItem_Click(object sender, EventArgs e)
{ } }
}
MenuItem的更多相关文章
- [WPF]MenuItem右侧空白
<Window> <Grid Background="SteelBlue"> <Grid.ContextMenu> <ContextMen ...
- WPF:设置MenuItem多种不同状态图标
需求描述: 给MenuItem内部的子Image设置默认图标(鼠标leave).鼠标hover图标.和选中时的图标. 注:是给Menu内个别MenuItem修改,并且是弹出子菜单. 问题描述: 1)前 ...
- unity3d拓展编辑器MenuItem的使用
MenuItem是自定义菜单栏显示 比如:[MenuItem("new/My Window")] 这样就会显示菜单new/My Window 把这个放在一个静态方法上就可以了.记住 ...
- WPF MenuItem 四种角色分析
Menu Menu的样式很简单,就是顶部的那个框,如下图 而其中的文字“文件”“图形”...是属于MenuItem的,要灵活使用MenuItem,就需要了解MenuItem.Role的作用 T ...
- WPF:MenuItem样式
基础信息 1.MenuItem 样式 <Window.Resources> <Style TargetType="{x:Type MenuItem}"> & ...
- wpf mvvm MenuItem的Command事件
这是一个事件的辅助类,可以通过它实现MenuItem的Command事件 public class MyCommands : Freezable, ICommand, ICommandSource { ...
- Menu MenuItem
Menu & MenuItem learning note Menu MenuItem MSDN Sample Code <Menu Grid.Row="0" Hor ...
- EditorWindow 和MenuItem
using UnityEngine; using System.Collections; using UnityEditor; public class ClipEventEditor : Edito ...
- 利用HTML 5中的Menu和Menuitem元素快速创建菜单
原文:Introducing the HTML5 “Menu” and “Menuitem” Elements 译文:HTML 5中Menu和Menuitem的元素介绍 译者:dwqs 今天向你介绍H ...
随机推荐
- 《MFC游戏开发》笔记二 建立工程、调整窗口
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9300383 作者:七十一雾央 新浪微博:http:/ ...
- sql 自定义函数--固定格式字符转时间类型
遇到一个德国的客户,他们的时间格式是JJJJ-TT-DD HH:MM:SS,程序按照这个格式将时间插入数据库,但是在sql自带的转换函数convert.cast过程中报错,网上搜了下都说用conver ...
- VMware系统运维(三 )SQL Server 2008 R2安装
1. 点击"全新SQL Server 独立安装或向现有安装添加功能" 2.验证通过,点击确定. 3.输入数据库密钥,必须支持正版,不然微软打你屁屁,嘻嘻 4.不接受不让你过,所以不 ...
- RedHat7搭建yum源服务器
1.新建目录 # mkdir -p /content/rhel7/x86_64/{isos,dvd}/ 2.上传RedHat安装光盘镜像,上传后的路径为 /content/rhel7/x86_64/i ...
- hdu 3093 动态规划
思路:直接引用论文的话. 暂时先不考虑“使剩下的物品都放不下”的条件,那就是求 0-1 背包的所有可行方案. 用 Fi[j]表示前 i 件物品中选若干件总体积为 j 的方案数,初始为 F0[0]=1, ...
- Linux 命令 - less: LESS IS MORE
less 程序是为了替换早期 UNIX 中的 more 程序.less 这个名字是对短语 "less is more" 开了个玩笑,该短语是现代派建筑师和设计师们的座右铭. les ...
- Android通过LIstView显示文件列表
[绥江一百]http://www.sj100.net 欢迎,进入绥江一百感谢点击[我的小网站,请大家多 ...
- Global.asax中的操作数据库代码无法执行
本人最近在做一个基于Access数据库的Web应用程序,为了实现一个定时更新数据库的需求,我在Global.asax中的Application_Start函数里写了个计时器, void Applica ...
- HDOJ2013蟠桃记
蟠桃记 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...
- ios app名字的多语言支持
经测试,不同版本的xcode会有操作细节不同,本次环境xcode6.4 1)编辑Info.plist,添加一个新的属性Application has localized display name, 设 ...