WPF——菜单栏及TabControl
一、先造一个窗体,然后在窗体里面增加菜单栏及原始的TabControl选项卡
<Grid>
<Menu>
<MenuItem Header="文件" Click="MenuItem_Click_3">
<MenuItem Header="打开新窗口" Click="MenuItem_Click_1"></MenuItem>
<MenuItem Header="退出" Click="MenuItem_Click_4" ></MenuItem>
</MenuItem>
<MenuItem Header="帮助">
<MenuItem Header="关于我们"></MenuItem>
</MenuItem>
</Menu>
<TabControl Name="TabControl1" HorizontalAlignment="Left" Height="" Margin="0,20,0,0" VerticalAlignment="Top" Width="">
<TabItem Header="原始窗口">
<Grid Background="#FFE5E5E5">
<TextBox HorizontalAlignment="Left" Height="" Margin="" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width=""/> </Grid>
</TabItem>
</TabControl> </Grid>

二、当点击打开新窗口,便弹出新窗口,并且在新窗口里增加一个占满的文本框

public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private int i = ;//定义一个i用来使新造的Item名字不同
TextBox t;//每造一个新Item 然后将Textbox扔进去
private void MenuItem_Click_1(object sender, RoutedEventArgs e) //打开新窗口按钮
{
TabItem ti = new TabItem();//造一个新选项卡
ti.Header = "新窗口"+(i+);//新选项卡的名字
TabControl1.Items.Add(ti);//将造好的新选项卡扔进TabControl1里
t = new TextBox();//实体化一个新文本框
t.Width = ;
t.Height = ;
//下面开始将文本框添加到新造的选项卡中
ti.Content = t;
//每造一个新窗口便默认突出显示为新窗口
TabControl1.SelectedIndex = i+;
//TabControl1.SelectedIndex = TabControl1.Items.Count - 1;
i++;
//双击每个选项卡触发的事件
ti.MouseDoubleClick+=ti_MouseDoubleClick;
} private void MenuItem_Click_4(object sender, RoutedEventArgs e)//关闭按钮
{
this.Close();
}
private void ti_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
TabItem s = (TabItem)sender; //sender代表每个选项卡
TabControl1.Items.Remove(s);
}
private void MenuItem_Click_3(object sender, RoutedEventArgs e)
{ }
}

WPF——菜单栏及TabControl的更多相关文章
- WPF 模拟迅雷TabControl界面
WPF模拟迅雷TabControl界面 点击查看下载 <!--TabControl样式--> <Style x:Key="TabControlStyle" Tar ...
- WPF Control Hints - TabControl : 怎么修改整个tab header的margin?
WFP里面TabControl我们可以添加多个TabItem,每个TabItem的Header就是我们常点击的tab标签.但是默认的layout行为里面,这个header是有个2个像素的margin, ...
- WPF Adorner 在TabControl切换TabItem时消失
错误的截图: 一开始以为是MVVM绑定的代码中出现了问题,但是通过断点追踪并没有发现问题. 通过通过VS的实时可视化树发现问题:切换Item时Adorner会在AdornerLayer直接消失.届时怀 ...
- [WPF系列]-基础系列 TabControl应用
引言 Tabcontrol控件也是我们在项目中经常用到的一个控件,用它将相关的信息组织在一起分类显示. 简介 ========================================= ...
- Silverlight中的TabControl如何绑定数据?重写tabcontrol和tabItem 解决绑定友好问题。可以绑定对象集合
在 WPF 中,TabControl 可以直接将 ItemsSource 绑定数据源,见 将 TabControl 绑定到数据的示例 http://msdn.microsoft.com/zh-cn/l ...
- WPF自学入门(六)WPF带标题的内容控件简单介绍
在WPF自学入门(二)WPF-XAML布局控件的文章中分别介绍StackPanel,WarpPanel,DockPanel,Grid,Canvas五种布局容器的使用,可以让我们大致了解容器可以使用在什 ...
- WPF学习(三)--Menu、TabControl和DataGrid控件介绍
Menu Menu提供了菜单栏方式的多级菜单的管理和操作: 这里对Menu的样式不做任何的定制和管理 下面来对Menu进行测试: 将Menu添加到页面中 运行后,效果如下: 这里没有考虑界面效果和样式 ...
- wpf实现IE菜单栏自动隐藏效果
IE菜单栏默认为隐藏状态,按下键盘Alt键后显示,菜单失去焦点则自动隐藏.下面说说WPF中如何实现这样的效果. 第一步:Menu默认设置为隐藏(Visibility="Collapsed&q ...
- WPF: 针对Windows 8优化菜单栏和工具栏
原文 WPF: 针对Windows 8优化菜单栏和工具栏 目录 1. 关于菜单图标大小 2. 关于IsEnabled和工具栏图标 3. 针对.NET 3.x的菜单栏和工具栏外观 返回目录 1. 关于菜 ...
随机推荐
- C# 高精度减法 支持小数(待优化)
是现实思路 1,先小数点补位,8913758923475893274958738945793845-4893127498372459823745324532453245.284929384729837 ...
- 关于insertBefore
insertBefore,看名字就是在某个元素前插入元素,但是其实它可以再文档任何元素强势插入. insertBefore用法: parent.insertBefore(newChild, refCh ...
- AngularJS的学习网站及相关资源整理
学习angularjs的网站及相关资源的整理,会不断更新. angularJs的官网:https://angularjs.org/ API文档:https://docs.angularjs ...
- Java实战之03Spring-03Spring的核心之AOP(Aspect Oriented Programming 面向切面编程)
三.Spring的核心之AOP(Aspect Oriented Programming 面向切面编程) 1.AOP概念及原理 1.1.什么是AOP OOP:Object Oriented Progra ...
- 在Windows下用Mingw 4.5.2编译X264
1.下载mingw-get-inst-20110530.rar(http://www.baidu.com/link?url=-ixXW6QiuEl8CA1dKudoWCxzcTvxrpQ0nXRBHU ...
- rest和soap_笔记
Web 服务编程,REST 与 SOAP http://www.ibm.com/developerworks/cn/webservices/0907_rest_soap/ Web 服务编程,REST ...
- 观【史上最牛linux视频教程】整理笔记,持续更新……
//文件处理命令 命令格式:命令 [-参数] [参数] 例:ls -la /etc -a等于--all //目录处理命令:ls 英文原意:list 所在路径:/bin/ls 语法:ls 选项[-ald ...
- centos 安装php ide (eclipse + php 插件)
1.检查更新并安装eclipse yum check-update yum install eclipse*此时的 eclipse 已经安装好了,默认是在/usr/lib/下的,可以通过cd /u ...
- csdn博客刷点击率代码
此文为转载,亲测有效. import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; impo ...
- aspx页面状态管理Cookie和ViewState
Cookie 设置cookie protected void Button2_Click(object sender, EventArgs e) { HttpCookie cookie = new H ...