Revit 2011二次开发“弹出对话框,得到输入的值”

新建一个窗体FrmDlg.cs

编辑框txtVal
按钮btnOk
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;

namespace RevitCodes
{
    
public partial class FrmDlg : Form
    {
        
public string Val
        {
            
get { return txtVal.Text; }
            
set { txtVal.Text = value; }
        }
        
public FrmDlg()
        {
            InitializeComponent();
        }

        
private void btnOk_Click(object sender, EventArgs e)
        {
            
this.DialogResult = DialogResult.OK;
        }
    }
}
调用
#region 弹出对话框,得到输入的值
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
public class GetDialogValue : IExternalCommand
{
    
public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements)
    {
        FrmDlg frmDlg 
= new FrmDlg();
        frmDlg.ShowDialog();
        
if (frmDlg.DialogResult == DialogResult.OK)
        {
            MessageBox.Show(
"得到的值为:\n" + frmDlg.Val);
        }
        frmDlg.Dispose();
        
return Result.Succeeded;
    }
}
#endregion
posted @ 2011-03-11 15:25  大气象  阅读(2532)  评论(1编辑  收藏  举报
http://www.tianqiweiqi.com