12属性页TAB CONTROL

属性页控件 :ID_TAB  变量:m_tab

在资源中新建两个对话框: IDD_PAGE1, IDD_PAGE2       style属性改为Child  Border属性:None,分别添加类: CPage1Dl  CPage2Dlg

主对话框头文件添加:

protected:
	CPage1Dlg m_page1;
	CPage2Dlg m_page2;

主对话框OnInitDialog()中添加:

	// TODO: 在此添加额外的初始化代码
	m_tab.InsertItem(0,_T("第一页"));
	m_tab.InsertItem(1,_T("第二页"));
	//创建子对话框
	m_page1.Create(MAKEINTRESOURCE(IDD_PAGE1),&m_tab);
	m_page2.Create(MAKEINTRESOURCE(IDD_PAGE2),&m_tab);
	//就算对话框的显示位置和大小
	CRect rc;
	m_tab.GetClientRect(rc);
	rc.top+=30;
	rc.left+=28;
	rc.bottom-=58;
	rc.right-=62;
	//移动对话框
	m_page1.MoveWindow(rc);
	m_page2.MoveWindow(rc);
	//默认显示第一个对话框
	m_page1.ShowWindow(SW_SHOW);

为属性页控件添加TCN_SELCHANGE消息响应函数:

void CTabCtrlDemoDlg::OnTcnSelchangeTab(NMHDR *pNMHDR, LRESULT *pResult)
{
	// TODO: 在此添加控件通知处理程序代码
	switch(m_tab.GetCurSel())
	{
	case 0:
		m_page2.ShowWindow(SW_HIDE);
		m_page1.ShowWindow(SW_SHOW);
		break;
	case 1:
		m_page1.ShowWindow(SW_HIDE);
		m_page2.ShowWindow(SW_SHOW);
		break;
	default:
		break;
	}
	*pResult = 0;
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在WPF中新增Tab(选项卡)可以通过使用TabControl控件来实现。TabControl是一个容器控件,能够在其中嵌套多个TabItem,每个TabItem对应着一个面。 首先,我们需要在XAML中定义一个TabControl控件,并设置好其属性。可以设置TabStripPlacement属性来决定选项卡的位置,例如可以将选项卡放置在上方、下方、左侧或右侧。 然后,在TabControl中添加多个TabItem,每个TabItem代表一个面。可以设置TabItem的Header属性来显示选项卡标题,在Header中可以使用自定义的控件或文本。可以通过设置Content属性来指定TabItem对应的面内容。 如果需要在界面上动态新增或删除TabItem,可以通过操作TabControl.ItemsSource属性TabControl.ContentTemplate属性来实现数据绑定。通过绑定一个ObservableCollection<T>(T为自定义的ViewModel类)到TabControl.ItemsSource,当ObservableCollection<T>中的元素发生变化时,TabControl中的TabItem也会相应地变化。 对于新增Tab的需求,可以通过在代码中实例化一个新的TabItem,并设置好Header和Content属性,然后将其添加到TabControl的Items集合中。这样新的TabItem就会被添加到TabControl的末尾,在界面上显示为一个新的面选项卡。 需要注意的是,为了方便管理新增的Tab,可以将每个TabItem对应的内容面设计为UserControl或者通过Frame控件加载新的Page。这样可以更好地组织和管理面资源,提高代码的可维护性和重用性。 总之,在WPF中新增Tab可以通过TabControlTabItem实现,在代码中动态添加TabItem并设置好Header和Content属性即可。希望对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值