C# AE之返回上一级和下一级的实战操作
我就废话不多说了,大家还是直接看代码吧~
try
{
//判断是否可以返回上一视图
if(mapControl.ActiveView.ExtentStack.CanUndo())
{
//执行操作
mapControl.ActiveView.ExtentStack.Undo();
//刷新
mapControl.Refresh();
}
}
catch(Exceptionex)
{
throw;
}
try
{
if(mapControl.ActiveView.ExtentStack.CanRedo())
{
mapControl.ActiveView.ExtentStack.Redo();
mapControl.Refresh();
}
}
catch(Exceptionex)
{
throw;
}
补充:C#——单击按钮实现返回上一级窗口方法
一、实现父窗体的隐藏及显现
假设Form1是父窗体,Form2是新的窗体
Form1的按钮button1代码:
privatevoidbutton1_Click(objectsender,EventArgse)
{
Form2form2=newForm2(this);//把form1传给form2
this.Hide();//把自己隐藏了
//form2.ShowDialog();//2种显示方法都可以
form2.Show();
}
Form2的代码:
publicpartialclassForm2:Form
{
Form1_form1;
publicForm2(Form1form1)
{
InitializeComponent();
_form1=form1;
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
//把自己关闭,并显示Form1
this.Close();
_form1.Show();
}
}
二、多线程关闭窗体
Form1为欢迎界面,close为关闭按钮,Form2为主界面
publicpartialclassForm1:Form
{
publicForm1()
{
InitializeComponent();
th=newThread(newThreadStart(StartNewForm));
}
privateThreadth;
privatevoidStartNewForm()
{
From1mf=newFrom2();
Application.Run(mf);//启动主界面
}
privatevoidclose_Click(objectsender,EventArgse)
{
this.Close();//关闭窗体
th.Start();//启动另一个线程
}
}
以上为个人经验,希望能给大家一个参考,也希望大家多多支持毛票票。如有错误或未考虑完全的地方,望不吝赐教。