首页 > 杂文归档 正文
C# AE之返回上一级和下一级的实战操作

 2021-01-13 20:00:03     

我就废话不多说了,大家还是直接看代码吧~


try
{
https://判断是否可以返回上一视图
if (mapControl.ActiveView.ExtentStack.CanUndo())
{
https://执行操作
map

我就废话不多说了,大家还是直接看代码吧~

try
      {
https://判断是否可以返回上一视图
if (mapControl.ActiveView.ExtentStack.CanUndo())
{
  https://执行操作
  mapControl.ActiveView.ExtentStack.Undo();
  https://刷新
  mapControl.Refresh();
}
      }
      catch (Exception ex)
      {
throw;
      }
 try
      {
if (mapControl.ActiveView.ExtentStack.CanRedo())
{
  mapControl.ActiveView.ExtentStack.Redo();
  mapControl.Refresh();
}
      }
      catch (Exception ex)
      {
throw;
      }

补充:C#——单击按钮实现返回上一级窗口方法

一、实现父窗体的隐藏及显现

假设Form1是父窗体,Form2是新的窗体

Form1的按钮button1代码:

private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2(this);https://把form1传给form2
this.Hide();https://把自己隐藏了
https://form2.ShowDialog();https://2种显示方法都可以
form2.Show();
}

Form2的代码:

public partial class Form2 : Form
{
Form1 _form1;
public Form2(Form1 form1)
{
InitializeComponent();
_form1 = form1;
}
private void button1_Click(object sender, EventArgs e)
{
https://把自己关闭,并显示Form1
this.Close();
_form1.Show();
}
}

二、多线程关闭窗体

Form1 为欢迎界面,close为关闭按钮,Form 2为主界面

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
th = new Thread(new ThreadStart(StartNewForm));
}
private Thread th;
private void StartNewForm()
{
From1 mf = new From2();
Application.Run(mf);https://启动主界面
}
private void close_Click(object sender, EventArgs e)
{
this.Close();https://关闭窗体
th.Start();https://启动另一个线程
}
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。

原文链接:http://www.yuepc.com/a/1771.html

http://www.yuepc.com 为 “沈一博客” 唯一官方服务平台,请勿相信其他任何渠道。