|
//新建数据库窗体代码
public partial class CreateDatabase : Form
{
public CreateDatabase()
{
InitializeComponent();
}
string filePath;
public string FilePath
{
get { return filePath; }
set { filePath = value; }
}
string fileName;
public string FileName
{
get { return fileName; }
set { fileName = value; }
}
IWorkspace newWorkspace;
//新建工作空间
public IWorkspace NewWorkspace
{
get { return newWorkspace; }
set { newWorkspace = value; }
}
//浏览工作空间目录
private void btDirect_Click(object sender, EventArgs e)
{
if (this.folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{
this.txtDirect.Text = this.folderBrowserDialog1.SelectedPath;
}
}
//创建数据库
private void btCreate_Click(object sender, EventArgs e)
{
filePath = this.txtDirect.Text.ToString().Trim();
fileName = this.txtDbName.Text.ToString().Trim();
if (filePath == "") return;
IWorkspaceFactory workspaceFactory = new AccessWorkspaceFactoryClass();
IWorkspaceName workspaceName = workspaceFactory.Create(filePath, fileName, null, 0);
IName name = workspaceFactory as IName;
IWorkspace workspace = (IWorkspace)name.Open();
//newWorkspace = workspace;
this.Close();
this.Dispose();
}
//取消
private void btCancel_Click(object sender, EventArgs e)
{
this.Close();
this.Dispose();
}
}
//变量
//全局个人数据库目录
string m_FullPath;
//全局数据库名
string m_FullDatasetName;
//当前的工作空间
IWorkspace m_Workspace;
//工作空间列表
ArrayList m_WorkspaceList = new ArrayList();
//调用窗体代码
private void 创建数据库ToolStripMenuItem_Click(object sender, EventArgs e)
{
CreateDatabase createDatabase = new CreateDatabase();
m_FullDatasetName = createDatabase.FileName;
m_FullPath = createDatabase.FilePath;
m_Workspace = createDatabase.NewWorkspace;
m_WorkspaceList.Add(m_Workspace);
createDatabase.ShowDialog();
refreshTree();
}
//问题描述, 点击创建数据库,窗体弹出,选择数据库保存位置,点击创建,(提示未将对象引用到实例,但是数据库还是创建了,不创建数据库点击取消还是报(未将对象引用到实例))。 谁知道哪里错了,帮我解决下,万分感激!谢谢!
|
|